
Xodera Plugins · Bubble Native
Xodera Photo Editor Native
Konverter et valgt foto til en ensartet avatar, produktbillede eller rapportvedhæftning. Beskær, roter og ændr størrelsen, og gem derefter den eksporterede kopi i din app.
Public beta guides · Haptics instructions are in its Bubble listing
Public beta offer: free Bubble install · 7-day card trial, then US$1.50/month per plugin/project.
Dokumentation gennemgået 6 november 2026
Praktiske eksempler
Ensartede profil‑avatars før upload
Brugere bør vælge, hvilken del af deres foto der vises i et kvadratisk profilbillede i stedet for at acceptere et vilkårligt beskæring.
`source_url = selected profile image`; `crop_aspect = "1:1"`; `document_context = the account’s stable reference`.
Vent på `source_loaded`; Begin crop → Apply crop, med Rotate eller Undo efter behov. Ved eksplicit Gem, Export image.
Kun på `export_completed`, brug `output_uri`, `output_width`, `output_height` og `output_mime` som input til din fil‑upload‑workflow. Gem dens holdbare reference til profilen bagefter.
Hvis brugeren annullerer eller `editor_error` udløses, behold den gamle avatar. Ryd sessionen ved kontoskift, så en anden bruger ikke kan se kladden.
Redigering opretter en lokal kopi. Din app bestemmer, hvordan den gemmes eller uploades.
Forbered ensartede markeds‑ eller katalogfotoer
Forskellig indramning og overdimensionerede billeder gør et katalog ujævnt og øger uploadstørrelsen.
`source_url = selected item photo`; `crop_aspect = the app’s chosen ratio`; `export_max_dimension`, `export_format` og `export_quality` kommer fra din uploadpolitik.
Beskær det relevante område, eventuelt Resize, og derefter Export image efter at brugeren har bekræftet. Gem den originale fil/reference separat.
Tjek `output_width`, `output_height`, `output_bytes` og `output_mime`, før din upload‑workflow gemmer resultatet. Gem den resulterende billedreference på elementet.
Hvis eksporten fejler, eller resultatet overtræder din uploadpolitik, vis `error_code` og lad brugeren rette det. Overskriv ikke den tidligere element‑billede før uploadbekræftelse.
Redigering opretter en lokal kopi. Din app bestemmer, hvordan den gemmes eller uploades.
Opret en fokuseret billedkopi til en feltrapport
En tekniker kan have brug for et nærbillede af en beskadiget del, mens den originale rapport‑billede bevares.
`source_url = Current Report Photo’s source`; `document_context = the report/account reference`; beskæringsforholdet kan forblive ubegrænset.
Begin crop → Apply crop, brug derefter Undo/Redo til at sammenligne redigeringer. Export image opretter den redigerede kopi; din app spørger, om den kopi skal vedhæftes rapporten.
Brug `has_changes`, `can_undo`, `can_redo` og `output_uri`. Gem originale og redigerede referencer i separate app‑felter efter en vellykket upload.
Cancel crop eller Reset edits gendanner redigeringsstien; annullering skal efterlade den oprindelige Rapport-vedhæftning uændret.
Redigering opretter en lokal kopi. Din app bestemmer, hvordan den gemmes eller uploades.
Hvad der virker nu
Public beta. Use the documented controls and actions; test supported formats, permissions and device behavior in your own native app. Browser preview does not validate native device output.
Byg arbejdsprocessen
Brug de tilgængelige beta-handlinger nedenfor og test resultatet på dine målrettede enheder.
Denne eksempler bruger app‑poster såsom Lesson, Message og Order. Erstat dem med dine egne datatyper og elementnavne. Eksempelmedie‑adresser skal erstattes med dine egne filer.
Indstil source_url til det valgte billede. Brug document_context til at identificere den konto og det post, der redigeres, så ændring af posten rydder det tidligere foto.
Efter source_loaded, kør Begin crop. Vælg 1:1 til en avatar, juster beskæringen og brug Apply crop. Cancel crop lader billedet forblive uændret.
Brug Rotate, Flip eller Resize efter behov. Undo og Redo navigerer gennem gennemførte redigeringer; Reset edits gendanner originalbilledet.
Kør Export image. På export_completed, læs output_uri, output_width, output_height og output_mime. Gem eller upload den kopi ved hjælp af din valgte filgemnings‑workflow, og gem derefter den gemte fil i posten.
Konfigurer én gang
Nøgleaktivering er planlagt for dette plugin. Opret eller vælg dit Bubble‑app‑projekt i BestPlugins → Dashboard → Plugins. Vælg Xodera Photo Editor Native, kopier dens nøgle, og åbn derefter Bubble → Plugins → Xodera Photo Editor Native og indsæt den i licensing_api_key. Gem én gang; brug derefter handlingerne nedenfor. Hvert plugin i hvert projekt har sin egen nøgle.
Vælg eller optag billedet med din app først. Giv redigeringsprogrammet den resulterende læsbare billedadresse. Kamera‑ og fotobibliotekstilladelser tilhører den picker, du bruger.
Konfigurer én gang
- Opret eller vælg dit Bubble app-projekt på BestPlugins → Dashboard → Plugins.
- Vælg dette plugin og kopier dets projekt-nøgle.
- Open Bubble → Plugins → this plugin. Paste its project key into licensing_api_key and save.
- Tilføj elementet, vælg dine app-data og opbyg arbejdsflowet nedenfor.
- In the dashboard, review and confirm the 7-day card trial for this plugin. It then costs US$1.50/month per app project, including development and production. Cancel before the trial ends to avoid the first charge.
Installation og abonnement
For Audio Player, Video Player, Photo Editor, Audio Recorder, Files Kit and Haptics: free Bubble installation, a 7-day trial with a card, then US$1.50 per month per plugin and app project. Development and production are included, with no operation cap. File-size and feature limits still apply. Review billing and cancellation before confirming. Other plugins remain unavailable for purchase.
Gem resultatet i din app
Gem det uploadede eller permanent gemte billede i Profile.image eller dit vedhæftningsfelt. output_uri er en midlertidig fil på enheden, så gem først den fil med din valgte arbejdsgang. Gem derefter output_width, output_height og output_mime som metadata. Bevar originalbilledet, hvis du har brug for begge versioner.
Fejl, annullering og genoprettelse
På source_load_failed eller editor_error vises error_code og tilbydes Load source. Cancel operation stopper med at acceptere det ufærdige resultat; vent indtil is_busy=no, før du starter en ny redigering. Clear session rydder redigeringsprogrammet, ikke et billede, der allerede er gemt andre steder.
Kapaciteter og begrænsninger
JPEG og PNG eksport; kvalitet 0–1; maksimal udgangsstørrelse 1–4096 pixel. Input: op til 15 MiB og 20 megapixel. Op til 20 gennemførte redigeringer. Beskæringsvalg: fri, 1:1, 4:3, 3:4 og 16:9. Ingen indbygget kamera, filtre, tekstoverlejringer, perspektivkorrektion, WebP‑eksport eller automatisk upload.
Indstillinger, handlinger og resultater
Brug disse navne i Bubble. Planlagte funktioner er markeret separat.
Tilgængelige beta‑indstillinger
Elementindstillinger
source_url · textdocument_context · textis_active · yes_nodisabled · yes_noshow_controls · yes_nocrop_aspect · textexport_format · textexport_quality · numberexport_max_dimension · numberallow_upscale · yes_noui_text_json · textlanguage · textTilstande
editor_status · textis_busy · yes_nohas_image · yes_nohas_changes · yes_nocan_undo · yes_nocan_redo · yes_noimage_width · numberimage_height · numberoutput_uri · textoutput_width · numberoutput_height · numberoutput_bytes · numberoutput_mime · texterror_code · textcrop_active · yes_nocrop_rect_json · textBegivenheder
source_loadedsource_load_failededit_appliededit_undoneedit_redoneeditor_resetexport_startedexport_completedoperation_cancellededitor_errorHandlinger og deres input
Load sourceBegin cropApply cropCancel cropRotateFlipResizeUndoRedoReset editsExport imageCancel operationClear sessionElementindstillinger · 12
source_urltext · Standard: ""- Eksempelværdi
https://bestplugins.online/native-samples/avatar.jpg - Eksempel Bubble udtryk
Selected Profile's image_url - Adresse på den valgte lyd-, video- eller billedfil. Brug en filtype, som dette plugin understøtter.
document_contexttext · Standard: ""- Eksempelværdi
<current-user-id> - Eksempel Bubble udtryk
Current User's unique id - Stabil værdi for denne konto eller post. Brug den samme værdi, når du gendanner dens gemte filer eller kladder.
is_activeyes_no · Standard: true- Eksempelværdi
yes - Eksempel Bubble udtryk
GuideHost's view_is_active (your yes/no custom state) - Sæt ja, mens denne visning er åben. Sæt nej ved afslutning, så afspilning eller aktuelt arbejde kan stoppe.
disabledyes_no · Standard: false- Eksempelværdi
no - Eksempel Bubble udtryk
GuideHost's is_busy (your yes/no custom state) - Deaktivér elementet, mens din app er optaget eller handlingen er utilgængelig.
show_controlsyes_no · Standard: true- Eksempelværdi
yes - Eksempel Bubble udtryk
App Settings' show_editor_controls - Vis eller skjul de indbyggede kontroller.
crop_aspecttext · Standard: "free"- Eksempelværdi
1:1 - Eksempel Bubble udtryk
Avatar Settings' crop_ratio - Brug den aktuelle forretningspost's værdi; valider den mod grænserne nedenfor.
export_formattext · Standard: "jpeg"- Eksempelværdi
jpeg - Eksempel Bubble udtryk
Format Dropdown's value - Brug den aktuelle forretningspost's værdi; valider den mod grænserne nedenfor.
export_qualitynumber · Standard: 0.85- Eksempelværdi
0.85 - Eksempel Bubble udtryk
Image Settings' quality - Brug den aktuelle forretningspost's værdi; valider den mod grænserne nedenfor.
export_max_dimensionnumber · Standard: 2048- Eksempelværdi
2048 - Eksempel Bubble udtryk
Image Settings' max_side - Brug den aktuelle forretningspost's værdi; valider den mod grænserne nedenfor.
allow_upscaleyes_no · Standard: false- Eksempelværdi
no - Eksempel Bubble udtryk
Allow upscale Checkbox is checked - Brug den aktuelle forretningspost's værdi; valider den mod grænserne nedenfor.
ui_text_jsontext · Standard: ""- Eksempelværdi
{} - Eksempel Bubble udtryk
App Settings' player_labels_json (supported keys only) - Valgfri JSON med understøttede knapetiketter. Lad stå tomt for at bruge den indbyggede tekst.
languagetext · Standard: "auto"- Eksempelværdi
uk - Eksempel Bubble udtryk
Current User's preferred_language - Sæt language=auto til at følge en understøttet enhed eller browsersprog. Indtast en understøttet sprogkode for at vælge den eksplicit.
Handlinger og deres input · 13
Load source
Ingen handlingsparametre
Begin crop
Ingen handlingsparametre
Apply crop
origin_xnumber · Standard: —- Eksempelværdi
0 - Eksempel Bubble udtryk
Crop Settings' x (or omit all rectangle inputs) - Brug den aktuelle forretningspost's værdi; valider den mod grænserne nedenfor.
origin_ynumber · Standard: —- Eksempelværdi
0 - Eksempel Bubble udtryk
Crop Settings' y (or omit all rectangle inputs) - Brug den aktuelle forretningspost's værdi; valider den mod grænserne nedenfor.
widthnumber · Standard: —- Eksempelværdi
512 - Eksempel Bubble udtryk
Resize Width Input's value:converted to number - Brug den aktuelle forretningspost's værdi; valider den mod grænserne nedenfor.
heightnumber · Standard: —- Eksempelværdi
512 - Eksempel Bubble udtryk
Resize Height Input's value:converted to number - Brug den aktuelle forretningspost's værdi; valider den mod grænserne nedenfor.
Cancel crop
Ingen handlingsparametre
Rotate
degreesnumber · Standard: —- Eksempelværdi
90 - Eksempel Bubble udtryk
Rotation Dropdown's value - Brug den aktuelle forretningspost's værdi; valider den mod grænserne nedenfor.
Flip
axistext · Standard: —- Eksempelværdi
horizontal - Eksempel Bubble udtryk
Flip Direction Dropdown's value - Brug den aktuelle forretningspost's værdi; valider den mod grænserne nedenfor.
Resize
widthnumber · Standard: —- Eksempelværdi
512 - Eksempel Bubble udtryk
Resize Width Input's value:converted to number - Brug den aktuelle forretningspost's værdi; valider den mod grænserne nedenfor.
heightnumber · Standard: —- Eksempelværdi
512 - Eksempel Bubble udtryk
Resize Height Input's value:converted to number - Brug den aktuelle forretningspost's værdi; valider den mod grænserne nedenfor.
Undo
Ingen handlingsparametre
Redo
Ingen handlingsparametre
Reset edits
Ingen handlingsparametre
Export image
Ingen handlingsparametre
Cancel operation
Ingen handlingsparametre
Clear session
Ingen handlingsparametre
Tilstande og hændelser
Tilstande
editor_status · textNuværende resultat af denne handling. Brug den tilsvarende afslutnings‑begivenhed før gemning af succes.
is_busy · yes_noArbejdet er stadig i gang. Vent, før du starter en anden handling.
has_image · yes_noNuværende værdi for det valgte element. Læs den efter den relaterede begivenhed.
has_changes · yes_noNuværende værdi for det valgte element. Læs den efter den relaterede begivenhed.
can_undo · yes_noNuværende værdi for det valgte element. Læs den efter den relaterede begivenhed.
can_redo · yes_noNuværende værdi for det valgte element. Læs den efter den relaterede begivenhed.
image_width · numberNuværende værdi for det valgte element. Læs den efter den relaterede begivenhed.
image_height · numberNuværende værdi for det valgte element. Læs den efter den relaterede begivenhed.
output_uri · textFilplacering på denne enhed. Gem eller upload filen separat, hvis den skal holdes online.
output_width · numberNuværende værdi for det valgte element. Læs den efter den relaterede begivenhed.
output_height · numberNuværende værdi for det valgte element. Læs den efter den relaterede begivenhed.
output_bytes · numberNuværende værdi for det valgte element. Læs den efter den relaterede begivenhed.
output_mime · textNuværende værdi for det valgte element. Læs den efter den relaterede begivenhed.
error_code · textFejlinformation for den sidste handling. Vis en hjælpsom besked og tilbyd den relevante genforsøg.
crop_active · yes_noNuværende værdi for det valgte element. Læs den efter den relaterede begivenhed.
crop_rect_json · textNuværende værdi for det valgte element. Læs den efter den relaterede begivenhed.
Begivenheder
source_loadedNår denne hændelse indtræffer, læs de relaterede tilstande fra det samme element.
source_load_failedNår denne hændelse indtræffer, læs de relaterede tilstande fra det samme element.
edit_appliedNår denne hændelse indtræffer, læs de relaterede tilstande fra det samme element.
edit_undoneNår denne hændelse indtræffer, læs de relaterede tilstande fra det samme element.
edit_redoneNår denne hændelse indtræffer, læs de relaterede tilstande fra det samme element.
editor_resetNår denne hændelse indtræffer, læs de relaterede tilstande fra det samme element.
export_startedNår denne hændelse indtræffer, læs de relaterede tilstande fra det samme element.
export_completedNår denne hændelse indtræffer, læs de relaterede tilstande fra det samme element.
operation_cancelledNår denne hændelse indtræffer, læs de relaterede tilstande fra det samme element.
editor_errorNår denne hændelse indtræffer, læs de relaterede tilstande fra det samme element.
Spørgsmål udviklere stiller
Er output_uri en Bubble‑fil?
Nej. Det er en lokal cache‑sti. Bevar den via en pålidelig lokal gemmer eller uploader, før du gemmer en cloud‑filreference.
Hvordan fungerer abonnementet?
For Audio Player, Video Player, Photo Editor, Audio Recorder, Files Kit and Haptics: free Bubble installation, a 7-day trial with a card, then US$1.50 per month per plugin and app project. Development and production are included, with no operation cap. File-size and feature limits still apply. Review billing and cancellation before confirming. Other plugins remain unavailable for purchase.
Relaterede vejledninger
For hjælp, fortæl os, hvilket plugin og hvilken enhed du bruger, hvilken handling du forsøgte, og hvad der skete. Brug et eksempel uden personlige data. Del aldrig din nøgle eller private filer.