Translation workflow
amytl automates five stages but treats automation as a first draft. Every box, line, mask and layer stays editable.
The pipeline is a straight line: detect → read → translate → erase → typeset → export. You can run it end to end with Run all, or drive each stage yourself from the inspector. Running a stage never destroys the output of an earlier one — you can always go back and change a box, then re-read just that box.
1 · Detect
The built-in detector uses adaptive thresholding, morphological closing, connected components and then merges characters into lines and lines into blocks. It runs on the server, offline, and typically finishes a page in well under a second.
It is built for black lettering on pale paper. On a full-colour illustration it also sees hair, eyes, clothing folds and panel lines as ink, so boxes land on artwork and small bubbles are missed. Switch the engine to AI vision for those pages: the detector still proposes the boxes, and the free vision model then drops the ones that are really artwork. It costs an extra call per page, and its judgement varies a little between runs.
- Sensitivity trades recall against precision. Raise it for faint or small lettering; lower it if the detector starts catching artwork.
- Reading order is the manga convention: right to left, top to bottom. Reorder anytime with the Sort button in the Layers tab.
- Use the box tool to draw a region the detector missed; drag the corner handles of a selected box to resize it.
2 · Read (OCR)
Each detected region is transcribed in its original language. The crops of a page ride along in one request to a free vision model, so a whole page costs a single call; configure the model in Settings.
Select a single box and press Re-read to re-run OCR for just that region, or edit the recognised text directly.
3 · Translate
Translation is the only stage that talks to an external API. Pick a target language and a style instruction, then run it per page. amytl sends the preceding dialogue along as context so names and phrasing stay consistent across bubbles.
- Edit any line inline; press Re-translate on one line to retry it on its own.
- Toggle exclude to keep a line out of the typeset output without deleting it.
4 · Erase (inpaint)
Inpainting removes the original lettering. amytl builds a multi-scale pyramid and relaxes the masked pixels with a Gauss-Seidel diffusion solver, so the fill follows the surrounding artwork.
- Every detection produces its own mask patch, listed as a toggleable layer.
- Dilate grows a mask so anti-aliased edges of the old text disappear too.
- Use the mask tool to paint extra regions the detector did not cover.
- Choose blur instead of diffusion for flat, single-colour backgrounds.
5 · Typeset
Translated lines become editable text layers. Select one to change its font family, size, weight, italic, colour, line height, alignment, rotation and outline. Layers are drawn straight onto the export canvas, so what you see is what you get.
Export
Export PNG flattens the active page — cleaned artwork, every visible mask already applied,
every typeset layer drawn — into a single image. Export all walks every page. Save the
project as an .amytl archive to keep working later.