Eerdere native Photo Editor-interface. Bewerken en exporteren in de huidige bèta worden nog getest.
Eerdere native Photo Editor-interface. Bewerken en exporteren in de huidige bèta worden nog getest.
← Alle native gidsen

Xodera Plugins · Bubble Native

Xodera Photo Editor Native

Maak van een geselecteerde foto een consistente avatar, productafbeelding of rapportbijlage. Snijd bij, roteer en wijzig de grootte, en sla vervolgens de geëxporteerde kopie op in je 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.

Documentatie beoordeeld 6 november 2026

Praktische voorbeelden

Consistente profielfoto‑avatars vóór upload

Gebruikers moeten kiezen welk deel van hun foto in een vierkante profielfoto verschijnt in plaats van een willekeurige bijsnijding te accepteren.

`source_url = selected profile image`; `crop_aspect = "1:1"`; `document_context = the account’s stable reference`.

Wacht op `source_loaded`; Begin crop → Apply crop, met Rotate of Undo naar behoefte. Bij expliciete opslaan, Export image.

Alleen bij `export_completed`, gebruik `output_uri`, `output_width`, `output_height` en `output_mime` als invoer voor uw bestands‑uploadworkflow. Sla daarna de duurzame referentie op in het profiel.

Als de gebruiker annuleert of `editor_error` wordt geactiveerd, behoud dan de oude avatar. Maak de sessie leeg bij accountwissel zodat een andere gebruiker de concept‑avatar niet kan zien.

Bewerken maakt een lokale kopie. Uw app bepaalt hoe deze wordt opgeslagen of geüpload.

Bereid consistente markt‑ of catalogusfoto’s voor

Verschillende kaders en te grote afbeeldingen maken een catalogus ongelijkmatig en vergroten de uploadgrootte.

`source_url = selected item photo`; `crop_aspect = the app’s chosen ratio`; `export_max_dimension`, `export_format` en `export_quality` komen uit uw uploadbeleid.

Bijsnijd het relevante gebied, eventueel Resize, en vervolgens Export image nadat de gebruiker bevestigt. Bewaar het originele bestand/de referentie apart.

Controleer `output_width`, `output_height`, `output_bytes` en `output_mime` voordat uw uploadworkflow het resultaat opslaat. Bewaar de resulterende afbeeldingsreferentie op het item.

Als export mislukt of het resultaat uw uploadbeleid schendt, toon `error_code` en laat de gebruiker het aanpassen. Overschrijf de vorige item‑afbeelding niet vóór bevestiging van de upload.

Bewerken maakt een lokale kopie. Uw app bepaalt hoe deze wordt opgeslagen of geüpload.

Maak een gerichte afbeeldingskopie voor een veldrapport

Een technicus heeft mogelijk een close‑up van een beschadigd onderdeel nodig, terwijl de originele rapportafbeelding behouden blijft.

`source_url = Current Report Photo’s source`; `document_context = the report/account reference`; bijsnijdverhouding kan onbegrensd blijven.

Begin crop → Apply crop, gebruik vervolgens Undo/Redo om bewerkingen te vergelijken. Export image maakt de bewerkte kopie; uw app vraagt of die kopie aan het Rapport moet worden gekoppeld.

Doe gebruik van `has_changes`, `can_undo`, `can_redo` en `output_uri`. Sla originele en bewerkte referenties op in afzonderlijke app‑velden na een succesvolle upload.

Cancel crop of Reset edits herstelt het bewerkingspad; annulering moet de oorspronkelijke Rapport‑bijlage ongewijzigd laten.

Bewerken maakt een lokale kopie. Uw app bepaalt hoe deze wordt opgeslagen of geüpload.

Wat nu werkt

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.

Bouw de workflow

Gebruik de beschikbare bèta-acties hieronder en test het resultaat op uw doelapparaten.

Deze voorbeelden gebruiken app‑records zoals Lesson, Message en Order. Vervang ze door uw eigen gegevenstypen en elementnamen. Voorbeeld‑mediapaden moeten worden vervangen door uw eigen bestanden.

  1. Stel source_url in op de gekozen afbeelding. Gebruik document_context om het account en het te bewerken record te identificeren, zodat het wijzigen van het record de vorige foto wist.

  2. Na source_loaded voer je Begin crop uit. Kies 1:1 voor een avatar, pas het bijsnijden aan en gebruik Apply crop. Cancel crop laat de afbeelding ongewijzigd.

  3. Gebruik Rotate, Flip of Resize indien nodig. Undo en Redo gaan door voltooide bewerkingen; Reset edits herstelt de oorspronkelijke afbeelding.

  4. Voer Export image uit. Bij export_completed, lees output_uri, output_width, output_height en output_mime. Sla die kopie op of upload deze met uw gekozen bestandsopslagworkflow, en bewaar vervolgens het opgeslagen bestand in het record.

Workflow‑diagram — geen appscreenshot

Eenmalig configureren

Activatie van een sleutel is gepland voor deze plug‑in. Maak of kies je Bubble‑app‑project in BestPlugins → Dashboard → Plugins. Kies Xodera Photo Editor Native, kopieer de sleutel, open vervolgens Bubble → Plugins → Xodera Photo Editor Native en plak deze in licensing_api_key. Sla één keer op; gebruik daarna de onderstaande acties. Elke plug‑in in elk project heeft zijn eigen sleutel.

Selecteer of maak eerst de afbeelding met je app. Geef de editor het resulterende leesbare afbeeldingsadres. Camera‑ en fotobibliotheek‑machtigingen behoren tot de picker die je gebruikt.

Eenmalig configureren
  1. Maak of kies uw Bubble app‑project op BestPlugins → Dashboard → Plugins.
  2. Kies deze plug‑in en kopieer de projectsleutel.
  3. Open Bubble → Plugins → this plugin. Paste its project key into licensing_api_key and save.
  4. Voeg het element toe, kies uw app‑gegevens en bouw de workflow hieronder.
  5. 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.
Installatie en 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.

Sla het resultaat op in je app

Sla de geüploade of permanent opgeslagen afbeelding op in Profile.image of uw bijlageveld. output_uri is een tijdelijk bestand op het apparaat, dus sla dat bestand eerst op met uw gekozen workflow. Sla vervolgens output_width, output_height en output_mime op als metadata. Bewaar de originele afbeelding als u beide versies nodig heeft.

Fout, annulering en herstel

Bij source_load_failed of editor_error toon je error_code en bied je Load source aan. Cancel operation stopt met het accepteren van het onafgewerkte resultaat; wacht tot is_busy=no voordat je een andere bewerking start. Clear session wist de editor, niet een afbeelding die elders al is opgeslagen.

Mogelijkheden en limieten

JPEG en PNG export; kwaliteit 0–1; maximale uitvoerzijde 1–4096 pixels. Invoer: tot 15 MiB en 20 megapixels. Tot 20 voltooide bewerkingen. Bijsnijdopties: vrij, 1:1, 4:3, 3:4 en 16:9. Geen ingebouwde camera, filters, tekstoverlays, perspectiefcorrectie, WebP export of automatische upload.

Instellingen, acties en resultaten

Gebruik deze namen in Bubble. Geplande functies worden apart gemarkeerd.

Beschikbare bètainstellingen

Elementinstellingen

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 · text

Statussen

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 · text

Evenementen

source_loadedsource_load_failededit_appliededit_undoneedit_redoneeditor_resetexport_startedexport_completedoperation_cancellededitor_error

Acties en hun invoer

Load sourceBegin cropApply cropCancel cropRotateFlipResizeUndoRedoReset editsExport imageCancel operationClear session
Elementinstellingen · 12
source_urltext · Standaard: ""
Voorbeeldwaardehttps://bestplugins.online/native-samples/avatar.jpg
Voorbeeld Bubble-expressieSelected Profile's image_url
Adres van het geselecteerde audio‑, video‑ of afbeeldingsbestand. Gebruik een bestandstype dat deze plug‑in ondersteunt.
document_contexttext · Standaard: ""
Voorbeeldwaarde<current-user-id>
Voorbeeld Bubble-expressieCurrent User's unique id
Stabiele waarde voor dit account of record. Gebruik dezelfde waarde bij het herstellen van opgeslagen bestanden of concepten.
is_activeyes_no · Standaard: true
Voorbeeldwaardeyes
Voorbeeld Bubble-expressieGuideHost's view_is_active (your yes/no custom state)
Stel ja in zolang dit overzicht geopend is. Stel nee in bij verlaten, zodat afspelen of huidig werk kan stoppen.
disabledyes_no · Standaard: false
Voorbeeldwaardeno
Voorbeeld Bubble-expressieGuideHost's is_busy (your yes/no custom state)
Schakel het element uit terwijl uw app bezig is of deze actie niet beschikbaar is.
show_controlsyes_no · Standaard: true
Voorbeeldwaardeyes
Voorbeeld Bubble-expressieApp Settings' show_editor_controls
Toon of verberg de ingebouwde bedieningselementen.
crop_aspecttext · Standaard: "free"
Voorbeeldwaarde1:1
Voorbeeld Bubble-expressieAvatar Settings' crop_ratio
Gebruik de waarde van het huidige bedrijfsrecord; valideer deze tegen de onderstaande limieten.
export_formattext · Standaard: "jpeg"
Voorbeeldwaardejpeg
Voorbeeld Bubble-expressieFormat Dropdown's value
Gebruik de waarde van het huidige bedrijfsrecord; valideer deze tegen de onderstaande limieten.
export_qualitynumber · Standaard: 0.85
Voorbeeldwaarde0.85
Voorbeeld Bubble-expressieImage Settings' quality
Gebruik de waarde van het huidige bedrijfsrecord; valideer deze tegen de onderstaande limieten.
export_max_dimensionnumber · Standaard: 2048
Voorbeeldwaarde2048
Voorbeeld Bubble-expressieImage Settings' max_side
Gebruik de waarde van het huidige bedrijfsrecord; valideer deze tegen de onderstaande limieten.
allow_upscaleyes_no · Standaard: false
Voorbeeldwaardeno
Voorbeeld Bubble-expressieAllow upscale Checkbox is checked
Gebruik de waarde van het huidige bedrijfsrecord; valideer deze tegen de onderstaande limieten.
ui_text_jsontext · Standaard: ""
Voorbeeldwaarde{}
Voorbeeld Bubble-expressieApp Settings' player_labels_json (supported keys only)
Optionele JSON met ondersteunde knoplabels. Laat leeg om de ingebouwde tekst te gebruiken.
languagetext · Standaard: "auto"
Voorbeeldwaardeuk
Voorbeeld Bubble-expressieCurrent User's preferred_language
Stel language=auto in om een ondersteund apparaat of browsertaal te volgen. Voer een ondersteunde taalcodes in om deze expliciet te kiezen.
Acties en hun invoer · 13
Load source

Geen actieparameters

Begin crop

Geen actieparameters

Apply crop
origin_xnumber · Standaard: —
Voorbeeldwaarde0
Voorbeeld Bubble-expressieCrop Settings' x (or omit all rectangle inputs)
Gebruik de waarde van het huidige bedrijfsrecord; valideer deze tegen de onderstaande limieten.
origin_ynumber · Standaard: —
Voorbeeldwaarde0
Voorbeeld Bubble-expressieCrop Settings' y (or omit all rectangle inputs)
Gebruik de waarde van het huidige bedrijfsrecord; valideer deze tegen de onderstaande limieten.
widthnumber · Standaard: —
Voorbeeldwaarde512
Voorbeeld Bubble-expressieResize Width Input's value:converted to number
Gebruik de waarde van het huidige bedrijfsrecord; valideer deze tegen de onderstaande limieten.
heightnumber · Standaard: —
Voorbeeldwaarde512
Voorbeeld Bubble-expressieResize Height Input's value:converted to number
Gebruik de waarde van het huidige bedrijfsrecord; valideer deze tegen de onderstaande limieten.
Cancel crop

Geen actieparameters

Rotate
degreesnumber · Standaard: —
Voorbeeldwaarde90
Voorbeeld Bubble-expressieRotation Dropdown's value
Gebruik de waarde van het huidige bedrijfsrecord; valideer deze tegen de onderstaande limieten.
Flip
axistext · Standaard: —
Voorbeeldwaardehorizontal
Voorbeeld Bubble-expressieFlip Direction Dropdown's value
Gebruik de waarde van het huidige bedrijfsrecord; valideer deze tegen de onderstaande limieten.
Resize
widthnumber · Standaard: —
Voorbeeldwaarde512
Voorbeeld Bubble-expressieResize Width Input's value:converted to number
Gebruik de waarde van het huidige bedrijfsrecord; valideer deze tegen de onderstaande limieten.
heightnumber · Standaard: —
Voorbeeldwaarde512
Voorbeeld Bubble-expressieResize Height Input's value:converted to number
Gebruik de waarde van het huidige bedrijfsrecord; valideer deze tegen de onderstaande limieten.
Undo

Geen actieparameters

Redo

Geen actieparameters

Reset edits

Geen actieparameters

Export image

Geen actieparameters

Cancel operation

Geen actieparameters

Clear session

Geen actieparameters

Statussen en gebeurtenissen

Statussen

editor_status · text

Huidig resultaat van deze actie. Gebruik het bijpassende voltooiings‑event vóór het opslaan van succes.

is_busy · yes_no

Het werk is nog bezig. Wacht voordat u een andere actie start.

has_image · yes_no

Huidige waarde voor het geselecteerde item. Lees deze na het gerelateerde event.

has_changes · yes_no

Huidige waarde voor het geselecteerde item. Lees deze na het gerelateerde event.

can_undo · yes_no

Huidige waarde voor het geselecteerde item. Lees deze na het gerelateerde event.

can_redo · yes_no

Huidige waarde voor het geselecteerde item. Lees deze na het gerelateerde event.

image_width · number

Huidige waarde voor het geselecteerde item. Lees deze na het gerelateerde event.

image_height · number

Huidige waarde voor het geselecteerde item. Lees deze na het gerelateerde event.

output_uri · text

Bestandslocatie op dit apparaat. Sla het bestand apart op of upload het als het online bewaard moet blijven.

output_width · number

Huidige waarde voor het geselecteerde item. Lees deze na het gerelateerde event.

output_height · number

Huidige waarde voor het geselecteerde item. Lees deze na het gerelateerde event.

output_bytes · number

Huidige waarde voor het geselecteerde item. Lees deze na het gerelateerde event.

output_mime · text

Huidige waarde voor het geselecteerde item. Lees deze na het gerelateerde event.

error_code · text

Foutinformatie voor de laatste actie. Toon een nuttig bericht en bied de relevante herpoging aan.

crop_active · yes_no

Huidige waarde voor het geselecteerde item. Lees deze na het gerelateerde event.

crop_rect_json · text

Huidige waarde voor het geselecteerde item. Lees deze na het gerelateerde event.

Evenementen

source_loaded

Wanneer dit evenement plaatsvindt, lees dan de gerelateerde toestanden van hetzelfde element.

source_load_failed

Wanneer dit evenement plaatsvindt, lees dan de gerelateerde toestanden van hetzelfde element.

edit_applied

Wanneer dit evenement plaatsvindt, lees dan de gerelateerde toestanden van hetzelfde element.

edit_undone

Wanneer dit evenement plaatsvindt, lees dan de gerelateerde toestanden van hetzelfde element.

edit_redone

Wanneer dit evenement plaatsvindt, lees dan de gerelateerde toestanden van hetzelfde element.

editor_reset

Wanneer dit evenement plaatsvindt, lees dan de gerelateerde toestanden van hetzelfde element.

export_started

Wanneer dit evenement plaatsvindt, lees dan de gerelateerde toestanden van hetzelfde element.

export_completed

Wanneer dit evenement plaatsvindt, lees dan de gerelateerde toestanden van hetzelfde element.

operation_cancelled

Wanneer dit evenement plaatsvindt, lees dan de gerelateerde toestanden van hetzelfde element.

editor_error

Wanneer dit evenement plaatsvindt, lees dan de gerelateerde toestanden van hetzelfde element.

Vragen die ontwikkelaars stellen

Is output_uri een Bubble‑bestand?

Nee. Het is een lokaal cache‑pad. Houd het vast via een bewezen lokale opslaafunctie of uploader voordat u een cloud‑bestandsreferentie opslaat.

Hoe werkt het 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.

Gerelateerde handleidingen

Voor hulp, vertel ons welke plugin en welk apparaat u gebruikt, welke actie u probeerde en wat er gebeurde. Gebruik een voorbeeld zonder persoonlijke gegevens. Deel nooit uw sleutel of privé‑bestanden.