Interfàcia precedenta de Photo Editor per Bubble Native. L'edicion e l'exportacion dins la beta actuala son encara testadas.
Interfàcia precedenta de Photo Editor per Bubble Native. L'edicion e l'exportacion dins la beta actuala son encara testadas.
← Totas las guidas Bubble Native

Xodera Plugins · Bubble Native

Xodera Photo Editor Native

Transformar una fòto seleccionada en un avatar coerent, una imatge de produit o una pèça junta al rapòrt. Retalhar, rotir e redimensionar‑la, puèi enregistrar la còpia exportada dins l’aplicacion.

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.

Documentacion revisada 6 novèmber 2026

Exemples practics

Avatars de perfil consistents abans lo cargament

Los utilizaires devon causir quina partida de lor fòto apareisserà dins una imatge de perfil carrada al luòc d'acceptar un recadratge arbitrari.

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

Esperar `source_loaded` ; Begin crop → Apply crop, amb Rotate o Undo segon necessitat. En enregistrament explicite, Export image.

Unicament sus `export_completed`, utilizatz `output_uri`, `output_width`, `output_height` e `output_mime` coma entradas per lo flux de trabalh de cargament de fichièrs. Enregistratz sa referéncia durabla al Perfil puèi.

Se l'utilizaire anulla o `editor_error` s'executa, gardatz l'avatar ancian. Escafar la sesilha al cambiament de compte per que cap autre utilizaire pòsca pas veire lo borrolhon.

L'edicion crea una còpia locala. Vòstra aplicacion decide coma l'enregistrar o la cargar.

Preparar de fòtos de mercat o de catalòg consistents

Un encastre diferent e d'imatges tròp grans fan que lo catalòg siá irregular e aumentan la talha del cargament.

`source_url = selected item photo` ; `crop_aspect = the app’s chosen ratio` ; `export_max_dimension`, `export_format` e `export_quality` provenon de vòstra politica de cargament.

Recadrar la zona pertinent, opcionalament Resize, puèi Export image aprèp que l'utilizaire confirmi. Gardar lo fichièr/referéncia original separatament.

Verificatz `output_width`, `output_height`, `output_bytes` e `output_mime` abans que vòstre flux de cargament enregistri lo resultat. Emmagazinatz la referéncia de l'imatge obtenguda dins l'Item.

Se l'exportacion fracassa o lo resultat respècta pas vòstra politica de cargament, afichatz `error_code` e daissatz l'utilizaire lo modificar. Remplaçatz pas l'imatge precedenta de l'Item abans la confirmacion del cargament.

L'edicion crea una còpia locala. Vòstra aplicacion decide coma l'enregistrar o la cargar.

Crear una còpia d'imatge focalizada per un rapòrt de camp

Un tecnician pòt aver besonh d'un primièr plan d'una partida danyada tot en conservant l'imatge original del rapòrt.

`source_url = Current Report Photo’s source` ; `document_context = the report/account reference` ; lo rapòrt de recadratge pòt demorar sens restriccion.

Begin crop → Apply crop, puèi utilizatz Undo/Redo per comparar las modificacions. Export image crea la còpia editada; vòstra aplicacion demanda se cal adjuntar aquela còpia al Rapòrt.

Utilizatz `has_changes`, `can_undo`, `can_redo` e `output_uri`. Emmagazinar las referéncias originalas e editadas dins de camps d'aplicacion separats aprèp un cargament capitat.

Cancel crop o Reset edits restaura lo camin d’edicion ; l’anullacion deu daissar la pèça junta del Rapòrt original inalterada.

L'edicion crea una còpia locala. Vòstra aplicacion decide coma l'enregistrar o la cargar.

Qué fonciona ara

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.

Crear lo flux de trabalh

Utilizatz las accions beta disponiblas çai-jos e testatz lo resultat sus vòstres aparelhs cibla.

Aquestes exemples utilizan de registres d’aplicacion tals coma Lesson, Message e Order. Remplaçatz-los per vòstres pròpris tipes de donadas e noms d’elements. Las adreças de mèdias d’exemple devon èsser remplaçadas per vòstres pròpris fichièrs.

  1. Definir source_url a l’imatge seleccionada. Utilizar document_context per identificar lo compte e lo registre en cors d’edicion, de tal biais que cambiar lo registre escafa la fòto precedenta.

  2. Aprèp source_loaded, executar Begin crop. Causir 1 : 1 per un avatar, ajustar lo retalhatge e utilizar Apply crop. Cancel crop daissa l’imatge inalterada.

  3. Utilizar Rotate, Flip o Resize se necessari. Undo e Redo percórron las modificacions acabadas ; Reset edits restaura l’imatge originala.

  4. Executar Export image. Sus export_completed, legir output_uri, output_width, output_height e output_mime. Enregistrar o cargar aquela còpia amb lo flux de trabalh de salvament de fichièrs qu'avètz causit, puèi emmagazinar lo fichièr enregistrat dins lo registre.

Diagrama del flux de trabalh — pas una captura d’ecran d’aplicacion

Configurar un sol còp

L’activacion de la clau es prevista per aqueste plugin. Crear o causir lo vòstre projècte d’aplicacion Bubble dins BestPlugins → Dashboard → Plugins. Causir Xodera Photo Editor Native, copiar sa clau, puèi dobrir Bubble → Plugins → Xodera Photo Editor Native e la pegar dins licensing_api_key. Enregistrar una sola còp ; puèi utilizar las accions çai‑sota. Cada plugin dins cada projècte a sa pròpria clau.

Seleccionar o capturar l’imatge amb l’aplicacion d’en primièr. Donar a l’editor l’adreça de l’imatge legibla resultanta. Las permissions de la camèra e de la bibliotèca de fòtos apartenon al selector utilizat.

Configurar un sol còp
  1. Creatz o causissètz vòstre projècte d’aplicacion Bubble a BestPlugins → Dashboard → Plugins.
  2. Causissètz aqueste plugin e copiatz sa clau de projècte.
  3. Open Bubble → Plugins → this plugin. Paste its project key into licensing_api_key and save.
  4. Apondètz l’element, causissètz vòstras donadas d’aplicacion e construïtz lo flux de trabalh çai-jos.
  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.
Installacion e abonament

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.

Enregistrar lo resultat dins vòstra aplicacion

Enregistrar l’imatge cargada o salvada permanentament dins Profile.image o vòstre camp de pèça junta. output_uri es un fichièr temporari sul periferic, doncas salvatz d’en primièr aqueste fichièr amb lo flux de trabalh causit. Puèi emmagazinar output_width, output_height e output_mime coma metadonadas. Conservar l’imatge originala se vos cal las doas versions.

Fracàs, anullacion e recuperacion

Sus source_load_failed o editor_error, afichar error_code e prepausar Load source. Cancel operation arrèsta d’acceptar lo resultat pas acabat ; esperar fins a is_busy=no abans de començar una autra modificacion. Clear session escafa l’editor, pas una imatge ja enregistrada a un autre endrech.

Capacitats e limits

Export JPEG e PNG ; qualitat 0–1 ; costat maximum de sortida 1–4096 pixèls. Entrada : fins a 15 MiB e 20 megapixèls. Fins a 20 modificacions acabadas. Causidas de retalhatge : liure, 1 : 1, 4 : 3, 3 : 4 e 16 : 9. Pas de camèra integrada, filtres, superposicions de tèxte, correccion de perspectiva, export WebP o cargament automatic.

Paramètres, accions e resultats

Utilizatz aqueles noms dins Bubble. Las foncions planificadas son marcadas separadament.

Paramètres beta disponibles

Paramètres de l’element

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

Estats

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

Eveniments

source_loadedsource_load_failededit_appliededit_undoneedit_redoneeditor_resetexport_startedexport_completedoperation_cancellededitor_error

Accions e lors entradas

Load sourceBegin cropApply cropCancel cropRotateFlipResizeUndoRedoReset editsExport imageCancel operationClear session
Paramètres de l’element · 12
source_urltext · Per defaut: ""
Valor d’exemplehttps://bestplugins.online/native-samples/avatar.jpg
Exemple d'expression BubbleSelected Profile's image_url
Adreça del fichièr àudio, vidèo o imatge seleccionat. Utilizatz un tipe de fichièr que aqueste plugin supòrta.
document_contexttext · Per defaut: ""
Valor d’exemple<current-user-id>
Exemple d'expression BubbleCurrent User's unique id
Valor establa per aqueste compte o registre. Utilizatz la meteissa valor per restaurar sos fichièrs o borrolhons enregistrats.
is_activeyes_no · Per defaut: true
Valor d’exempleyes
Exemple d'expression BubbleGuideHost's view_is_active (your yes/no custom state)
Definissètz yes mentre aquesta vista es dobèrta. Definissètz no quand la quitatz, per que la lectura o lo trabalh en cors se pòsca arrestar.
disabledyes_no · Per defaut: false
Valor d’exempleno
Exemple d'expression BubbleGuideHost's is_busy (your yes/no custom state)
Desactivar l’element mentre vòstra aplicacion es ocupada o aquesta accion es indisponibla.
show_controlsyes_no · Per defaut: true
Valor d’exempleyes
Exemple d'expression BubbleApp Settings' show_editor_controls
Afichar o amagar los contraròtles integrats.
crop_aspecttext · Per defaut: "free"
Valor d’exemple1:1
Exemple d'expression BubbleAvatar Settings' crop_ratio
Utilizatz la valor del registre comercial actual ; validatz-la contra los limits çai-jos.
export_formattext · Per defaut: "jpeg"
Valor d’exemplejpeg
Exemple d'expression BubbleFormat Dropdown's value
Utilizatz la valor del registre comercial actual ; validatz-la contra los limits çai-jos.
export_qualitynumber · Per defaut: 0.85
Valor d’exemple0.85
Exemple d'expression BubbleImage Settings' quality
Utilizatz la valor del registre comercial actual ; validatz-la contra los limits çai-jos.
export_max_dimensionnumber · Per defaut: 2048
Valor d’exemple2048
Exemple d'expression BubbleImage Settings' max_side
Utilizatz la valor del registre comercial actual ; validatz-la contra los limits çai-jos.
allow_upscaleyes_no · Per defaut: false
Valor d’exempleno
Exemple d'expression BubbleAllow upscale Checkbox is checked
Utilizatz la valor del registre comercial actual ; validatz-la contra los limits çai-jos.
ui_text_jsontext · Per defaut: ""
Valor d’exemple{}
Exemple d'expression BubbleApp Settings' player_labels_json (supported keys only)
JSON opcional amb etiquetas de botonas suportadas. Daissatz void per utilizar lo tèxte integrat.
languagetext · Per defaut: "auto"
Valor d’exempleuk
Exemple d'expression BubbleCurrent User's preferred_language
Definissètz language=auto per seguir la lenga de l'aparelh o del navegador se aquela lenga es suportada. Entratz un còde de lenga suportat per la causir explicitament.
Accions e lors entradas · 13
Load source

Cap de paramètre d'accion

Begin crop

Cap de paramètre d'accion

Apply crop
origin_xnumber · Per defaut: —
Valor d’exemple0
Exemple d'expression BubbleCrop Settings' x (or omit all rectangle inputs)
Utilizatz la valor del registre comercial actual ; validatz-la contra los limits çai-jos.
origin_ynumber · Per defaut: —
Valor d’exemple0
Exemple d'expression BubbleCrop Settings' y (or omit all rectangle inputs)
Utilizatz la valor del registre comercial actual ; validatz-la contra los limits çai-jos.
widthnumber · Per defaut: —
Valor d’exemple512
Exemple d'expression BubbleResize Width Input's value:converted to number
Utilizatz la valor del registre comercial actual ; validatz-la contra los limits çai-jos.
heightnumber · Per defaut: —
Valor d’exemple512
Exemple d'expression BubbleResize Height Input's value:converted to number
Utilizatz la valor del registre comercial actual ; validatz-la contra los limits çai-jos.
Cancel crop

Cap de paramètre d'accion

Rotate
degreesnumber · Per defaut: —
Valor d’exemple90
Exemple d'expression BubbleRotation Dropdown's value
Utilizatz la valor del registre comercial actual ; validatz-la contra los limits çai-jos.
Flip
axistext · Per defaut: —
Valor d’exemplehorizontal
Exemple d'expression BubbleFlip Direction Dropdown's value
Utilizatz la valor del registre comercial actual ; validatz-la contra los limits çai-jos.
Resize
widthnumber · Per defaut: —
Valor d’exemple512
Exemple d'expression BubbleResize Width Input's value:converted to number
Utilizatz la valor del registre comercial actual ; validatz-la contra los limits çai-jos.
heightnumber · Per defaut: —
Valor d’exemple512
Exemple d'expression BubbleResize Height Input's value:converted to number
Utilizatz la valor del registre comercial actual ; validatz-la contra los limits çai-jos.
Undo

Cap de paramètre d'accion

Redo

Cap de paramètre d'accion

Reset edits

Cap de paramètre d'accion

Export image

Cap de paramètre d'accion

Cancel operation

Cap de paramètre d'accion

Clear session

Cap de paramètre d'accion

Estats e eveniments

Estats

editor_status · text

Resultat actual d’aquesta accion. Utilizatz l’eveniment de fin correspondent abans d’enregistrar lo succès.

is_busy · yes_no

Lo trabalh es encara en cors. Esperatz abans d’aviar una autra accion.

has_image · yes_no

Valor actual per l’element seleccionat. Legissètz-la aprèp l’eveniment associat.

has_changes · yes_no

Valor actual per l’element seleccionat. Legissètz-la aprèp l’eveniment associat.

can_undo · yes_no

Valor actual per l’element seleccionat. Legissètz-la aprèp l’eveniment associat.

can_redo · yes_no

Valor actual per l’element seleccionat. Legissètz-la aprèp l’eveniment associat.

image_width · number

Valor actual per l’element seleccionat. Legissètz-la aprèp l’eveniment associat.

image_height · number

Valor actual per l’element seleccionat. Legissètz-la aprèp l’eveniment associat.

output_uri · text

Emplaçament del fichièr sus aqueste aparelh. Enregistratz o cargatz lo fichièr separatament se deu èsser mantengut en linha.

output_width · number

Valor actual per l’element seleccionat. Legissètz-la aprèp l’eveniment associat.

output_height · number

Valor actual per l’element seleccionat. Legissètz-la aprèp l’eveniment associat.

output_bytes · number

Valor actual per l’element seleccionat. Legissètz-la aprèp l’eveniment associat.

output_mime · text

Valor actual per l’element seleccionat. Legissètz-la aprèp l’eveniment associat.

error_code · text

Informacions d'error per la darrièra accion. Afichatz un messatge util e prepausatz de tornar ensajar l'operacion pertinenta.

crop_active · yes_no

Valor actual per l’element seleccionat. Legissètz-la aprèp l’eveniment associat.

crop_rect_json · text

Valor actual per l’element seleccionat. Legissètz-la aprèp l’eveniment associat.

Eveniments

source_loaded

Quand aqueste eveniment se produtz, legissètz los estats relatius a partir del meteis element.

source_load_failed

Quand aqueste eveniment se produtz, legissètz los estats relatius a partir del meteis element.

edit_applied

Quand aqueste eveniment se produtz, legissètz los estats relatius a partir del meteis element.

edit_undone

Quand aqueste eveniment se produtz, legissètz los estats relatius a partir del meteis element.

edit_redone

Quand aqueste eveniment se produtz, legissètz los estats relatius a partir del meteis element.

editor_reset

Quand aqueste eveniment se produtz, legissètz los estats relatius a partir del meteis element.

export_started

Quand aqueste eveniment se produtz, legissètz los estats relatius a partir del meteis element.

export_completed

Quand aqueste eveniment se produtz, legissètz los estats relatius a partir del meteis element.

operation_cancelled

Quand aqueste eveniment se produtz, legissètz los estats relatius a partir del meteis element.

editor_error

Quand aqueste eveniment se produtz, legissètz los estats relatius a partir del meteis element.

Questions que los desvolopaires posan

output_uri es un Bubble File?

Non. Es un camin de cache local. Enregistratz lo fichièr amb un sistèma de salvament local o de cargament que fonciona de manièra verificada abans d'emmagazinar una referéncia de fichièr dins lo cloud.

Cossí fonciona l’abonament ?

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.

Guidas ligadas

Per obténer d’ajuda, informatz-nos quin plugin e quin aparelh utilizatz, l’accion que ensajatz e çò qu’es capitat. Utilizatz un exemple sens donadas personalas. Partajatz pas jamai vòstra clau o vòstres fichièrs privats.