Back to results
Explore the library298 guides total · goals, work & tasks
By goal

Choose what you want to achieve.

By work or interest

Choose a setting you work or spend time in.

By task

Choose the kind of help you want.

Counts show all available guides. Filters combine to narrow your results.

Make life easierGuide

Place comic dialogue so the reading order is clear

Keep exact words, speaker tails and protected drawing areas together.

Illustrative resourceNot tool-testedAdults working with original or authorized non-sensitive creative material
What you’re working towards

Four supplied panel mockups with a six-line lettering overlay, exact order/speaker ledger and separate reader-check sheet. Digital geometry is checked; a human reading trial remains unperformed.

Download playbook .md

Your choice also saves this guide’s current worked-example checkmarks. Only this browser; no account or sync. View saved guides

Saving needs JavaScript. Reading and downloading this guide does not save it.

Included example · illustrative SVG file

Comic lettering plan

Original authored teaching file. Actual digital checks are scoped separately; no consumer AI, reader, rehearsal or physical print trial is claimed.

Not tool-tested. Review and adapt before using it for a real project.

Four two-hundred-by-one-hundred-fifty-unit panels arranged left to right in two rows. Six balloons preserve the dialogue in order: Ready?; Almost.; Where is the card?; Under your cup.; Oh.; Now I am. Tails point toward A or B above protected shaded face and action areas.
Original synthetic schematic; digital artifact checks only. Open the full file to inspect small details.

Source files to work with

Make a start

One step at a time.

3 steps

Start with the synthetic worked example or other non-sensitive inputs. Run one prompt at a time in your chosen AI tool. Replace any bracketed placeholders with the requested material, check each reply, and supply the source or earlier outputs that step needs. Paste them again if the tool lacks that context.

Start with the synthetic example, then adapt each prompt to your task.

01

Open the sample and request the lettering files

Open the four supplied source PNGs in an image viewer. Start a new chat in a text assistant you already have permission to use. Paste the complete prompt below, including every BEGIN/END source block for all four panels. Each block contains that panel’s complete original SVG drawing, so no upload is needed for this practice route. Ask the assistant to retain each art-Pn group unchanged and add the lettering separately. If any source block is missing or truncated, copy it again before continuing. If you choose an image-capable route instead, upload all four authorized PNGs with the same prompt and confirm it can inspect each one. Expect a complete annotated SVG, reader SVG and six-row ledger, not just tips. Do not paste the worked Output as input. If files are unavailable, copy each complete SVG from its opening <svg to its closing </svg into a plain UTF-8 text editor and save with a .svg extension, not .svg.txt. A text-only description is not a finished overlay.

Your starting prompt
Create the complete lettering deliverables from this sample. Keep checks that require a reader marked unperformed.

ORIGINAL SYNTHETIC COMIC MOCKUPS
Use four supplied original 200 × 150 coordinate panels P1–P4. Units are drawing coordinates, not physical millimetres. Origin is top left; x increases rightward and y downward. Read P1, P2, P3, P4, arranged in two rows, left-to-right then top-to-bottom. In each panel A occupies x20–70 and B x130–180. Protect the complete face rectangles A=(20,45,50,35), B=(130,45,50,35), and the full action strip (0,95,200,40). Coordinates are x,y,width,height. Neither a balloon, tail nor its stroke may cover those regions.
The source files comic-source-p1.svg through comic-source-p4.svg, with matching PNGs, are original schematics. They show labeled circular heads and simple bodies, a tabletop card below a cup, and shaded protected areas. They are mockups, not finished comic art or a claim about a real scene. The complete source SVG for each panel is included at the end of this input. Preserve the art-P1 through art-P4 groups exactly and add lettering as separate sibling groups; do not reconstruct the drawing from this short description. This makes the pasted-text sample self-contained. If an actual-image route is used instead, inspect every supplied file.

EXACT DIALOGUE, IN SOURCE ORDER
U1: P1, A, Ready?
U2: P1, B, Almost.
U3: P2, B, Where is the card?
U4: P3, A, Under your cup.
U5: P3, B, Oh.
U6: P4, B, Now I am.
Keep capitalization, punctuation and wording exactly. No new caption or dialogue. Put speech above the faces. Tail tips should stop short of a face while pointing toward the correct speaker; do not draw through a protected face. Preserve source art.

DELIVERABLE
Return a four-panel annotated placement draft as complete self-contained SVG, a second reader version with utterance numbers and speaker-order hints removed, and a six-row ledger: utterance ID/order, panel, speaker, exact text, balloon x/y/width/height, tail polygon points and intended target. Retain A/B character identifiers in the reader version so a reader can name the speakers. Use safe SVG shapes and local fonts only, with no scripts, linked images, external fonts or remote resources. Provide a protected-area check and a separate, unperformed human read-through. Other placements may be valid; do not call this one uniquely correct.

COMPLETE ORIGINAL PANEL SVG SOURCES
Each source below is an original 200 × 150 panel. Keep its art-Pn group unchanged when placing it in the combined sheet; use a containing translation group to position the panel. The source title/description is metadata, not dialogue. Do not invent or redraw missing geometry.
BEGIN comic-source-p1.svg
<svg xmlns="http://www.w3.org/2000/svg" width="200" height="150" viewBox="0 0 200 150" role="img" aria-labelledby="title desc"><title id="title">Original comic panel P1, unlettered</title><desc id="desc">Original synthetic coordinate artwork, not a photograph, product screenshot or completed physical trial.</desc><g id="art-P1"><rect x="0.5" y="0.5" width="199" height="149" fill="#FAF8F1" stroke="#263544" stroke-width="1"/><rect id="protected-A-P1" x="20" y="45" width="50" height="35" fill="#F5DEBA"/><circle cx="45" cy="61" r="12" fill="none" stroke="#263544" stroke-width="1.4"/><path d="M45 73 V92 M45 82 L29 92 M45 82 L61 92" fill="none" stroke="#263544" stroke-width="1.4"/><text x="45" y="64" font-family="DejaVu Sans,sans-serif" font-size="9" text-anchor="middle" fill="#263544">A</text><rect id="protected-B-P1" x="130" y="45" width="50" height="35" fill="#F5DEBA"/><circle cx="155" cy="61" r="12" fill="none" stroke="#263544" stroke-width="1.4"/><path d="M155 73 V92 M155 82 L139 92 M155 82 L171 92" fill="none" stroke="#263544" stroke-width="1.4"/><text x="155" y="64" font-family="DejaVu Sans,sans-serif" font-size="9" text-anchor="middle" fill="#263544">B</text><rect id="protected-action-P1" x="0" y="95" width="200" height="40" fill="#DCE8E5"/><path d="M12 118 H188" stroke="#263544" stroke-width="1.2"/><rect x="113" y="110" width="22" height="7" fill="#FFFFFF" stroke="#263544" stroke-width="1"/><path d="M116 96 H132 V110 H116 Z M132 98 C141 96 141 108 132 106" fill="#FFFFFF" stroke="#263544" stroke-width="1"/><text x="100" y="130" font-family="DejaVu Sans,sans-serif" font-size="7.5" text-anchor="middle" fill="#263544">reserved action area</text></g></svg>
END comic-source-p1.svg

BEGIN comic-source-p2.svg
<svg xmlns="http://www.w3.org/2000/svg" width="200" height="150" viewBox="0 0 200 150" role="img" aria-labelledby="title desc"><title id="title">Original comic panel P2, unlettered</title><desc id="desc">Original synthetic coordinate artwork, not a photograph, product screenshot or completed physical trial.</desc><g id="art-P2"><rect x="0.5" y="0.5" width="199" height="149" fill="#FAF8F1" stroke="#263544" stroke-width="1"/><rect id="protected-A-P2" x="20" y="45" width="50" height="35" fill="#F5DEBA"/><circle cx="45" cy="61" r="12" fill="none" stroke="#263544" stroke-width="1.4"/><path d="M45 73 V92 M45 82 L29 92 M45 82 L61 92" fill="none" stroke="#263544" stroke-width="1.4"/><text x="45" y="64" font-family="DejaVu Sans,sans-serif" font-size="9" text-anchor="middle" fill="#263544">A</text><rect id="protected-B-P2" x="130" y="45" width="50" height="35" fill="#F5DEBA"/><circle cx="155" cy="61" r="12" fill="none" stroke="#263544" stroke-width="1.4"/><path d="M155 73 V92 M155 82 L139 92 M155 82 L171 92" fill="none" stroke="#263544" stroke-width="1.4"/><text x="155" y="64" font-family="DejaVu Sans,sans-serif" font-size="9" text-anchor="middle" fill="#263544">B</text><rect id="protected-action-P2" x="0" y="95" width="200" height="40" fill="#DCE8E5"/><path d="M12 118 H188" stroke="#263544" stroke-width="1.2"/><rect x="113" y="110" width="22" height="7" fill="#FFFFFF" stroke="#263544" stroke-width="1"/><path d="M116 96 H132 V110 H116 Z M132 98 C141 96 141 108 132 106" fill="#FFFFFF" stroke="#263544" stroke-width="1"/><text x="100" y="130" font-family="DejaVu Sans,sans-serif" font-size="7.5" text-anchor="middle" fill="#263544">reserved action area</text></g></svg>
END comic-source-p2.svg

BEGIN comic-source-p3.svg
<svg xmlns="http://www.w3.org/2000/svg" width="200" height="150" viewBox="0 0 200 150" role="img" aria-labelledby="title desc"><title id="title">Original comic panel P3, unlettered</title><desc id="desc">Original synthetic coordinate artwork, not a photograph, product screenshot or completed physical trial.</desc><g id="art-P3"><rect x="0.5" y="0.5" width="199" height="149" fill="#FAF8F1" stroke="#263544" stroke-width="1"/><rect id="protected-A-P3" x="20" y="45" width="50" height="35" fill="#F5DEBA"/><circle cx="45" cy="61" r="12" fill="none" stroke="#263544" stroke-width="1.4"/><path d="M45 73 V92 M45 82 L29 92 M45 82 L61 92" fill="none" stroke="#263544" stroke-width="1.4"/><text x="45" y="64" font-family="DejaVu Sans,sans-serif" font-size="9" text-anchor="middle" fill="#263544">A</text><rect id="protected-B-P3" x="130" y="45" width="50" height="35" fill="#F5DEBA"/><circle cx="155" cy="61" r="12" fill="none" stroke="#263544" stroke-width="1.4"/><path d="M155 73 V92 M155 82 L139 92 M155 82 L171 92" fill="none" stroke="#263544" stroke-width="1.4"/><text x="155" y="64" font-family="DejaVu Sans,sans-serif" font-size="9" text-anchor="middle" fill="#263544">B</text><rect id="protected-action-P3" x="0" y="95" width="200" height="40" fill="#DCE8E5"/><path d="M12 118 H188" stroke="#263544" stroke-width="1.2"/><rect x="113" y="110" width="22" height="7" fill="#FFFFFF" stroke="#263544" stroke-width="1"/><path d="M116 96 H132 V110 H116 Z M132 98 C141 96 141 108 132 106" fill="#FFFFFF" stroke="#263544" stroke-width="1"/><text x="100" y="130" font-family="DejaVu Sans,sans-serif" font-size="7.5" text-anchor="middle" fill="#263544">reserved action area</text></g></svg>
END comic-source-p3.svg

BEGIN comic-source-p4.svg
<svg xmlns="http://www.w3.org/2000/svg" width="200" height="150" viewBox="0 0 200 150" role="img" aria-labelledby="title desc"><title id="title">Original comic panel P4, unlettered</title><desc id="desc">Original synthetic coordinate artwork, not a photograph, product screenshot or completed physical trial.</desc><g id="art-P4"><rect x="0.5" y="0.5" width="199" height="149" fill="#FAF8F1" stroke="#263544" stroke-width="1"/><rect id="protected-A-P4" x="20" y="45" width="50" height="35" fill="#F5DEBA"/><circle cx="45" cy="61" r="12" fill="none" stroke="#263544" stroke-width="1.4"/><path d="M45 73 V92 M45 82 L29 92 M45 82 L61 92" fill="none" stroke="#263544" stroke-width="1.4"/><text x="45" y="64" font-family="DejaVu Sans,sans-serif" font-size="9" text-anchor="middle" fill="#263544">A</text><rect id="protected-B-P4" x="130" y="45" width="50" height="35" fill="#F5DEBA"/><circle cx="155" cy="61" r="12" fill="none" stroke="#263544" stroke-width="1.4"/><path d="M155 73 V92 M155 82 L139 92 M155 82 L171 92" fill="none" stroke="#263544" stroke-width="1.4"/><text x="155" y="64" font-family="DejaVu Sans,sans-serif" font-size="9" text-anchor="middle" fill="#263544">B</text><rect id="protected-action-P4" x="0" y="95" width="200" height="40" fill="#DCE8E5"/><path d="M12 118 H188" stroke="#263544" stroke-width="1.2"/><rect x="113" y="110" width="22" height="7" fill="#FFFFFF" stroke="#263544" stroke-width="1"/><path d="M116 96 H132 V110 H116 Z M132 98 C141 96 141 108 132 106" fill="#FFFFFF" stroke="#263544" stroke-width="1"/><text x="100" y="130" font-family="DejaVu Sans,sans-serif" font-size="7.5" text-anchor="middle" fill="#263544">reserved action area</text></g></svg>
END comic-source-p4.svg
02

Open, check, correct and reopen

Open the two returned SVGs in a permitted viewer. Compare every line and speaker with your unchanged source. For this sample, check the six-row order, balloon/tail geometry and protected bounds listed below. If anything is missing, clipped or changed, quote the exact utterance and source constraint and request the complete corrected SVGs and ledger. Save reviewed files under new names, close and reopen them, and confirm they still show all four panels and all six lines. Keep the source files unchanged. Then use the blank reader-check sheet for a future read-through; a successful render is not that trial.

Your starting prompt
Audit the actual SVGs and ledger against the original sample input in this chat. Check all six exact utterances once, local panel coordinates, reading order, correct tail targets and full stroked footprints outside protected regions. If any check fails, return complete corrected replacements. Separate file/source checks from the still-unperformed reader trial.
03

Use your own art and exact dialogue

Start a new chat. Replace every bracketed field below with your complete input. For real art, upload only files you own or may share and confirm each can be inspected. If upload is unavailable, use a genuinely complete exact geometric mockup or stop; a casual description is not inspection of the original art. Expect files and a ledger sized to your own panels and utterances. Open, check, save separately and reopen every corrected file. Do not reuse the sample counts or coordinates.

Your starting prompt
Letter my existing panels without rewriting the dialogue. Use only MY INPUT. Return annotated SVG overlays or complete safe SVG source, an unnumbered reader edition and one ledger row per utterance: ID/order, panel, speaker, exact text, balloon bounds, complete tail geometry and target. For uploaded art, inspect each actual file; if unsupported, say which file is blocked. Do not invent unseen protected regions. Preserve source artwork; do not embed it in external services without permission.

MY INPUT
Owned panel files or complete exact mockup geometry, with IDs and dimensions: [replace]
Coordinate origin, units and axis directions: [replace]
Exact dialogue in reading order, with utterance/panel/speaker IDs: [replace]
Each speaker's location and face bounds per panel: [replace]
All protected drawing regions and any required clearances: [replace]
Panel order and reading direction: [replace]
Permitted lettering area, font/size limits and requested export: [replace]

Ask about missing essential facts or conflicts instead of guessing. Use my quantities, not a practice example. No scripts, external resources or linked fonts. Check full stroked footprints, word preservation and each tail's intended speaker. Mark reader response untested; provide a blank plan for a person to read the unnumbered version and identify speakers. Return finished editable output, unknowns and an inspection checklist. If a mismatch is reported, return complete corrected files and ledger. Do not publish, send or overwrite the originals.
Optional: improve the result

Test the order without annotation help

Return to the original sample chat, or paste its complete Input and checked Output again. This extension uses only that sample. Keep the first files unchanged and compare the reader edition; no actual reader result is supplied.

Advanced prompt
For the original four-panel sample, prepare a blank observation table for a reader who has not seen the numbered ledger. Record each spoken line and named speaker in the order actually given, then compare after the reading with the source. Do not fill hypothetical observations or claim the trial happened. If a trial reveals a mismatch, propose an alternative placement that preserves the six exact lines and every protected region; recheck the full SVG and repeat with a reader.
Show, then try

See the shape of the result.

This input is synthetic. The output is a written illustration of the intended result, not a verified AI-tool run.

The starting point

Synthetic input
ORIGINAL SYNTHETIC COMIC MOCKUPS
Use four supplied original 200 × 150 coordinate panels P1–P4. Units are drawing coordinates, not physical millimetres. Origin is top left; x increases rightward and y downward. Read P1, P2, P3, P4, arranged in two rows, left-to-right then top-to-bottom. In each panel A occupies x20–70 and B x130–180. Protect the complete face rectangles A=(20,45,50,35), B=(130,45,50,35), and the full action strip (0,95,200,40). Coordinates are x,y,width,height. Neither a balloon, tail nor its stroke may cover those regions.
The source files comic-source-p1.svg through comic-source-p4.svg, with matching PNGs, are original schematics. They show labeled circular heads and simple bodies, a tabletop card below a cup, and shaded protected areas. They are mockups, not finished comic art or a claim about a real scene. The complete source SVG for each panel is included at the end of this input. Preserve the art-P1 through art-P4 groups exactly and add lettering as separate sibling groups; do not reconstruct the drawing from this short description. This makes the pasted-text sample self-contained. If an actual-image route is used instead, inspect every supplied file.

EXACT DIALOGUE, IN SOURCE ORDER
U1: P1, A, Ready?
U2: P1, B, Almost.
U3: P2, B, Where is the card?
U4: P3, A, Under your cup.
U5: P3, B, Oh.
U6: P4, B, Now I am.
Keep capitalization, punctuation and wording exactly. No new caption or dialogue. Put speech above the faces. Tail tips should stop short of a face while pointing toward the correct speaker; do not draw through a protected face. Preserve source art.

DELIVERABLE
Return a four-panel annotated placement draft as complete self-contained SVG, a second reader version with utterance numbers and speaker-order hints removed, and a six-row ledger: utterance ID/order, panel, speaker, exact text, balloon x/y/width/height, tail polygon points and intended target. Retain A/B character identifiers in the reader version so a reader can name the speakers. Use safe SVG shapes and local fonts only, with no scripts, linked images, external fonts or remote resources. Provide a protected-area check and a separate, unperformed human read-through. Other placements may be valid; do not call this one uniquely correct.

COMPLETE ORIGINAL PANEL SVG SOURCES
Each source below is an original 200 × 150 panel. Keep its art-Pn group unchanged when placing it in the combined sheet; use a containing translation group to position the panel. The source title/description is metadata, not dialogue. Do not invent or redraw missing geometry.
BEGIN comic-source-p1.svg
<svg xmlns="http://www.w3.org/2000/svg" width="200" height="150" viewBox="0 0 200 150" role="img" aria-labelledby="title desc"><title id="title">Original comic panel P1, unlettered</title><desc id="desc">Original synthetic coordinate artwork, not a photograph, product screenshot or completed physical trial.</desc><g id="art-P1"><rect x="0.5" y="0.5" width="199" height="149" fill="#FAF8F1" stroke="#263544" stroke-width="1"/><rect id="protected-A-P1" x="20" y="45" width="50" height="35" fill="#F5DEBA"/><circle cx="45" cy="61" r="12" fill="none" stroke="#263544" stroke-width="1.4"/><path d="M45 73 V92 M45 82 L29 92 M45 82 L61 92" fill="none" stroke="#263544" stroke-width="1.4"/><text x="45" y="64" font-family="DejaVu Sans,sans-serif" font-size="9" text-anchor="middle" fill="#263544">A</text><rect id="protected-B-P1" x="130" y="45" width="50" height="35" fill="#F5DEBA"/><circle cx="155" cy="61" r="12" fill="none" stroke="#263544" stroke-width="1.4"/><path d="M155 73 V92 M155 82 L139 92 M155 82 L171 92" fill="none" stroke="#263544" stroke-width="1.4"/><text x="155" y="64" font-family="DejaVu Sans,sans-serif" font-size="9" text-anchor="middle" fill="#263544">B</text><rect id="protected-action-P1" x="0" y="95" width="200" height="40" fill="#DCE8E5"/><path d="M12 118 H188" stroke="#263544" stroke-width="1.2"/><rect x="113" y="110" width="22" height="7" fill="#FFFFFF" stroke="#263544" stroke-width="1"/><path d="M116 96 H132 V110 H116 Z M132 98 C141 96 141 108 132 106" fill="#FFFFFF" stroke="#263544" stroke-width="1"/><text x="100" y="130" font-family="DejaVu Sans,sans-serif" font-size="7.5" text-anchor="middle" fill="#263544">reserved action area</text></g></svg>
END comic-source-p1.svg

BEGIN comic-source-p2.svg
<svg xmlns="http://www.w3.org/2000/svg" width="200" height="150" viewBox="0 0 200 150" role="img" aria-labelledby="title desc"><title id="title">Original comic panel P2, unlettered</title><desc id="desc">Original synthetic coordinate artwork, not a photograph, product screenshot or completed physical trial.</desc><g id="art-P2"><rect x="0.5" y="0.5" width="199" height="149" fill="#FAF8F1" stroke="#263544" stroke-width="1"/><rect id="protected-A-P2" x="20" y="45" width="50" height="35" fill="#F5DEBA"/><circle cx="45" cy="61" r="12" fill="none" stroke="#263544" stroke-width="1.4"/><path d="M45 73 V92 M45 82 L29 92 M45 82 L61 92" fill="none" stroke="#263544" stroke-width="1.4"/><text x="45" y="64" font-family="DejaVu Sans,sans-serif" font-size="9" text-anchor="middle" fill="#263544">A</text><rect id="protected-B-P2" x="130" y="45" width="50" height="35" fill="#F5DEBA"/><circle cx="155" cy="61" r="12" fill="none" stroke="#263544" stroke-width="1.4"/><path d="M155 73 V92 M155 82 L139 92 M155 82 L171 92" fill="none" stroke="#263544" stroke-width="1.4"/><text x="155" y="64" font-family="DejaVu Sans,sans-serif" font-size="9" text-anchor="middle" fill="#263544">B</text><rect id="protected-action-P2" x="0" y="95" width="200" height="40" fill="#DCE8E5"/><path d="M12 118 H188" stroke="#263544" stroke-width="1.2"/><rect x="113" y="110" width="22" height="7" fill="#FFFFFF" stroke="#263544" stroke-width="1"/><path d="M116 96 H132 V110 H116 Z M132 98 C141 96 141 108 132 106" fill="#FFFFFF" stroke="#263544" stroke-width="1"/><text x="100" y="130" font-family="DejaVu Sans,sans-serif" font-size="7.5" text-anchor="middle" fill="#263544">reserved action area</text></g></svg>
END comic-source-p2.svg

BEGIN comic-source-p3.svg
<svg xmlns="http://www.w3.org/2000/svg" width="200" height="150" viewBox="0 0 200 150" role="img" aria-labelledby="title desc"><title id="title">Original comic panel P3, unlettered</title><desc id="desc">Original synthetic coordinate artwork, not a photograph, product screenshot or completed physical trial.</desc><g id="art-P3"><rect x="0.5" y="0.5" width="199" height="149" fill="#FAF8F1" stroke="#263544" stroke-width="1"/><rect id="protected-A-P3" x="20" y="45" width="50" height="35" fill="#F5DEBA"/><circle cx="45" cy="61" r="12" fill="none" stroke="#263544" stroke-width="1.4"/><path d="M45 73 V92 M45 82 L29 92 M45 82 L61 92" fill="none" stroke="#263544" stroke-width="1.4"/><text x="45" y="64" font-family="DejaVu Sans,sans-serif" font-size="9" text-anchor="middle" fill="#263544">A</text><rect id="protected-B-P3" x="130" y="45" width="50" height="35" fill="#F5DEBA"/><circle cx="155" cy="61" r="12" fill="none" stroke="#263544" stroke-width="1.4"/><path d="M155 73 V92 M155 82 L139 92 M155 82 L171 92" fill="none" stroke="#263544" stroke-width="1.4"/><text x="155" y="64" font-family="DejaVu Sans,sans-serif" font-size="9" text-anchor="middle" fill="#263544">B</text><rect id="protected-action-P3" x="0" y="95" width="200" height="40" fill="#DCE8E5"/><path d="M12 118 H188" stroke="#263544" stroke-width="1.2"/><rect x="113" y="110" width="22" height="7" fill="#FFFFFF" stroke="#263544" stroke-width="1"/><path d="M116 96 H132 V110 H116 Z M132 98 C141 96 141 108 132 106" fill="#FFFFFF" stroke="#263544" stroke-width="1"/><text x="100" y="130" font-family="DejaVu Sans,sans-serif" font-size="7.5" text-anchor="middle" fill="#263544">reserved action area</text></g></svg>
END comic-source-p3.svg

BEGIN comic-source-p4.svg
<svg xmlns="http://www.w3.org/2000/svg" width="200" height="150" viewBox="0 0 200 150" role="img" aria-labelledby="title desc"><title id="title">Original comic panel P4, unlettered</title><desc id="desc">Original synthetic coordinate artwork, not a photograph, product screenshot or completed physical trial.</desc><g id="art-P4"><rect x="0.5" y="0.5" width="199" height="149" fill="#FAF8F1" stroke="#263544" stroke-width="1"/><rect id="protected-A-P4" x="20" y="45" width="50" height="35" fill="#F5DEBA"/><circle cx="45" cy="61" r="12" fill="none" stroke="#263544" stroke-width="1.4"/><path d="M45 73 V92 M45 82 L29 92 M45 82 L61 92" fill="none" stroke="#263544" stroke-width="1.4"/><text x="45" y="64" font-family="DejaVu Sans,sans-serif" font-size="9" text-anchor="middle" fill="#263544">A</text><rect id="protected-B-P4" x="130" y="45" width="50" height="35" fill="#F5DEBA"/><circle cx="155" cy="61" r="12" fill="none" stroke="#263544" stroke-width="1.4"/><path d="M155 73 V92 M155 82 L139 92 M155 82 L171 92" fill="none" stroke="#263544" stroke-width="1.4"/><text x="155" y="64" font-family="DejaVu Sans,sans-serif" font-size="9" text-anchor="middle" fill="#263544">B</text><rect id="protected-action-P4" x="0" y="95" width="200" height="40" fill="#DCE8E5"/><path d="M12 118 H188" stroke="#263544" stroke-width="1.2"/><rect x="113" y="110" width="22" height="7" fill="#FFFFFF" stroke="#263544" stroke-width="1"/><path d="M116 96 H132 V110 H116 Z M132 98 C141 96 141 108 132 106" fill="#FFFFFF" stroke="#263544" stroke-width="1"/><text x="100" y="130" font-family="DejaVu Sans,sans-serif" font-size="7.5" text-anchor="middle" fill="#263544">reserved action area</text></g></svg>
END comic-source-p4.svg

Copies text only. For image or file tasks, use the source files named in the steps too.

Download source .txt

The intended result

Illustrative output
Authored lettering example over original mockups, not a recorded consumer-AI answer or human reading trial.

ACTUAL FILES
comic-lettering-plan.svg/.png contains four annotated placement drafts. The sheet is 840 × 680 display pixels with viewBox 0 0 420 340. Panel-local artwork remains 200 × 150. P1/P2 origins are (5,15)/(215,15); P3/P4 are (5,185)/(215,185). Gutter labels hold the utterance-order notes, outside the panels. comic-lettering-reader.svg/.png removes those U-number/speaker-order hints while keeping panel and character IDs. Four unlettered source SVG/PNGs remain separate.

SIX-ROW PLACEMENT LEDGER
Coordinates below are local to each panel. Every balloon height is 28; each y is 6. The printed speech uses 10-unit local sans-serif text. No extra spoken word is inserted.
U1 | P1 A | Ready? | balloon (8,6,76,28) | tail (38,34),(52,34),(45,42)
U2 | P1 B | Almost. | balloon (116,6,76,28) | tail (148,34),(162,34),(155,42)
U3 | P2 B | Where is the card? | balloon (40,6,152,28) | tail (148,34),(162,34),(155,42)
U4 | P3 A | Under your cup. | balloon (8,6,104,28) | tail (38,34),(52,34),(45,42)
U5 | P3 B | Oh. | balloon (136,6,56,28) | tail (148,34),(162,34),(155,42)
U6 | P4 B | Now I am. | balloon (96,6,96,28) | tail (148,34),(162,34),(155,42)

ORDER AND OWNERSHIP
P1 has U1 on the left, U2 on the right. P2 has U3 only. P3 has U4 on the left, U5 on the right. P4 has U6 only. A tails end at (45,42), pointing toward A's face center (45,61); B tails end at (155,42), pointing toward B's face center (155,61). A tail points toward a speaker without touching the face: the closed triangular tail uses the SVG default miter join, a 1-unit stroke and the default miter limit 4. Its pointed stroke edge reaches y=42 + 0.5×sqrt(7²+8²)/7 = 42.759296… rather than simply adding half the stroke width. The remaining clearance to protected y=45 is 2.240704… units. Fresh Inkscape bounds for both comic sheets agree to their reported precision (bottom 42.7593; clearance about 2.2407). The balloon stroke ends at y=34.5. All lettering therefore stays above all protected regions. The narrowest same-panel gap between balloon strokes is 23 units in P3. Tail/balloon pair checks and actual text bounds are checked separately from reading ease.

WHAT IS AND IS NOT CHECKED
The six exact text strings, source order, speaker attributes, local rectangles, triangular tails and effective paint/transform contract are checked from actual SVG and ledger files. An independent offset-line calculation includes the full mitered tail footprint; fresh renderer queries check both sheets. Tail-local stroke overrides, extra transforms or styles are rejected rather than silently assuming the parent stroke applies. The source artwork is identical in source, annotated and reader editions. The actual renders were opened at intrinsic and 320-pixel sheet widths. At narrow width fine annotations are small; open the full file to inspect coordinates. These checks do not establish that a new reader interprets the order or speaker ownership correctly.
Give the reader edition, without this ledger, to one person and ask them to read each line aloud and name A or B. Record their actual sequence on the blank reader-check sheet, then compare with U1–U6. No reader result is filled in. Revise and repeat if a line or speaker differs; do not rename that unperformed check as passed.
Download result .txt
You’re the final check

Check the worked example.

These checks use the worked example and its particular facts. With your own material, check your actual names, numbers, sources and rules; do not reuse the sample’s values as the answer.

Unsaved checks stay in this tab and reset when you reload. If you choose Save guide, its current example checkmarks are kept in this browser when storage is available.

A few things to watch for.

  • Changing dialogue to make it fit changes the source. Move or resize the balloon instead.
  • A tail can point to the right person while still covering a protected face; check its entire footprint.
  • Numbered annotations can hide ambiguous reading order. Use the separate reader edition for a real check.

What has been checked?

Documentation
No dated source review recorded.
Included files
Scoped checks passed on 2026-10-14. Fixture checks. See scope below.
AI workflow
Not run in a recorded consumer-AI workflow.
Time savings
Time savings not measured
Read the scope and evidence

comic-lettering-plan.svg

2026-10-14 · semantic fixture · passed

Author source/geometry/format checks for this exact supplied fixture. Actual rendered previews inspected separately. No consumer AI execution, reader trial, camera rehearsal, filming or physical print/overprint is established.

  • Exact source IDs, coordinates, wording or unchanged text mirror checked as applicable.
  • Safe owned file, bounded canvas/dimensions, or blank unperformed trial card.
  • Artifact bytes hashed after author checks; review acceptance remains separate.

Environment: Read-only Python XML/JSON/CSV/PNG assertions against independently enumerated source constants; Inkscape 1.4 render and direct image inspection.

SHA-256: f2554fd867f415d055276007a15bef1cccb21cab15a9f7c75b0bd9bd8fb09112

comic-lettering-plan.png

2026-10-14 · semantic fixture · passed

Author source/geometry/format checks for this exact supplied fixture. Actual rendered previews inspected separately. No consumer AI execution, reader trial, camera rehearsal, filming or physical print/overprint is established.

  • Exact source IDs, coordinates, wording or unchanged text mirror checked as applicable.
  • Safe owned file, bounded canvas/dimensions, or blank unperformed trial card.
  • Artifact bytes hashed after author checks; review acceptance remains separate.

Environment: Read-only Python XML/JSON/CSV/PNG assertions against independently enumerated source constants; Inkscape 1.4 render and direct image inspection.

SHA-256: 085900cca86975edfbb9c9e66cf439713700b29401a12778a7832cd4e6f12189

comic-lettering-reader.svg

2026-10-14 · semantic fixture · passed

Author source/geometry/format checks for this exact supplied fixture. Actual rendered previews inspected separately. No consumer AI execution, reader trial, camera rehearsal, filming or physical print/overprint is established.

  • Exact source IDs, coordinates, wording or unchanged text mirror checked as applicable.
  • Safe owned file, bounded canvas/dimensions, or blank unperformed trial card.
  • Artifact bytes hashed after author checks; review acceptance remains separate.

Environment: Read-only Python XML/JSON/CSV/PNG assertions against independently enumerated source constants; Inkscape 1.4 render and direct image inspection.

SHA-256: b4712ebe034a33082312ebda343ab3bb0ac2c3ed4be57d0009f409589164e3a2

comic-lettering-reader.png

2026-10-14 · semantic fixture · passed

Author source/geometry/format checks for this exact supplied fixture. Actual rendered previews inspected separately. No consumer AI execution, reader trial, camera rehearsal, filming or physical print/overprint is established.

  • Exact source IDs, coordinates, wording or unchanged text mirror checked as applicable.
  • Safe owned file, bounded canvas/dimensions, or blank unperformed trial card.
  • Artifact bytes hashed after author checks; review acceptance remains separate.

Environment: Read-only Python XML/JSON/CSV/PNG assertions against independently enumerated source constants; Inkscape 1.4 render and direct image inspection.

SHA-256: 9595297afcc6b260da1aa055868ffcaa4c9486d6d2bde9eb5040b3f69cc73c3d

comic-lettering-ledger.json

2026-10-14 · semantic fixture · passed

Author source/geometry/format checks for this exact supplied fixture. Actual rendered previews inspected separately. No consumer AI execution, reader trial, camera rehearsal, filming or physical print/overprint is established.

  • Exact source IDs, coordinates, wording or unchanged text mirror checked as applicable.
  • Safe owned file, bounded canvas/dimensions, or blank unperformed trial card.
  • Artifact bytes hashed after author checks; review acceptance remains separate.

Environment: Read-only Python XML/JSON/CSV/PNG assertions against independently enumerated source constants; Inkscape 1.4 render and direct image inspection.

SHA-256: e7408b04cfbd018ec7e864b7d7025d44ad740d8e2eb2ae3584794d167abecb18

comic-lettering-ledger.csv

2026-10-14 · semantic fixture · passed

Author source/geometry/format checks for this exact supplied fixture. Actual rendered previews inspected separately. No consumer AI execution, reader trial, camera rehearsal, filming or physical print/overprint is established.

  • Exact source IDs, coordinates, wording or unchanged text mirror checked as applicable.
  • Safe owned file, bounded canvas/dimensions, or blank unperformed trial card.
  • Artifact bytes hashed after author checks; review acceptance remains separate.

Environment: Read-only Python XML/JSON/CSV/PNG assertions against independently enumerated source constants; Inkscape 1.4 render and direct image inspection.

SHA-256: f8a438a4fff1869117d2018514c33d97cb23f46b893ee0babe3af7399f049d83

comic-reader-check.md

2026-10-14 · semantic fixture · passed

Author source/geometry/format checks for this exact supplied fixture. Actual rendered previews inspected separately. No consumer AI execution, reader trial, camera rehearsal, filming or physical print/overprint is established.

  • Exact source IDs, coordinates, wording or unchanged text mirror checked as applicable.
  • Safe owned file, bounded canvas/dimensions, or blank unperformed trial card.
  • Artifact bytes hashed after author checks; review acceptance remains separate.

Environment: Read-only Python XML/JSON/CSV/PNG assertions against independently enumerated source constants; Inkscape 1.4 render and direct image inspection.

SHA-256: 540626a0ee04adc26c1fd5264675af3720be469ad370fca3eb9908da9c5662fc

comic-source-p1.svg

2026-10-14 · semantic fixture · passed

Author source/geometry/format checks for this exact supplied fixture. Actual rendered previews inspected separately. No consumer AI execution, reader trial, camera rehearsal, filming or physical print/overprint is established.

  • Exact source IDs, coordinates, wording or unchanged text mirror checked as applicable.
  • Safe owned file, bounded canvas/dimensions, or blank unperformed trial card.
  • Artifact bytes hashed after author checks; review acceptance remains separate.

Environment: Read-only Python XML/JSON/CSV/PNG assertions against independently enumerated source constants; Inkscape 1.4 render and direct image inspection.

SHA-256: cac46902f108cb4b3df2ff386fbd16b4d08e252099bb5ae0dfafc90ae4988737

comic-source-p1.png

2026-10-14 · semantic fixture · passed

Author source/geometry/format checks for this exact supplied fixture. Actual rendered previews inspected separately. No consumer AI execution, reader trial, camera rehearsal, filming or physical print/overprint is established.

  • Exact source IDs, coordinates, wording or unchanged text mirror checked as applicable.
  • Safe owned file, bounded canvas/dimensions, or blank unperformed trial card.
  • Artifact bytes hashed after author checks; review acceptance remains separate.

Environment: Read-only Python XML/JSON/CSV/PNG assertions against independently enumerated source constants; Inkscape 1.4 render and direct image inspection.

SHA-256: 0328c09348bc35a9fb2c74b91050d12ab5c60e4a02e5f9b33cb0e63e512569b3

comic-source-p2.svg

2026-10-14 · semantic fixture · passed

Author source/geometry/format checks for this exact supplied fixture. Actual rendered previews inspected separately. No consumer AI execution, reader trial, camera rehearsal, filming or physical print/overprint is established.

  • Exact source IDs, coordinates, wording or unchanged text mirror checked as applicable.
  • Safe owned file, bounded canvas/dimensions, or blank unperformed trial card.
  • Artifact bytes hashed after author checks; review acceptance remains separate.

Environment: Read-only Python XML/JSON/CSV/PNG assertions against independently enumerated source constants; Inkscape 1.4 render and direct image inspection.

SHA-256: 3f72788e9bbcfd728993e30f8a14605054220507bcfc312526e530226b541964

comic-source-p2.png

2026-10-14 · semantic fixture · passed

Author source/geometry/format checks for this exact supplied fixture. Actual rendered previews inspected separately. No consumer AI execution, reader trial, camera rehearsal, filming or physical print/overprint is established.

  • Exact source IDs, coordinates, wording or unchanged text mirror checked as applicable.
  • Safe owned file, bounded canvas/dimensions, or blank unperformed trial card.
  • Artifact bytes hashed after author checks; review acceptance remains separate.

Environment: Read-only Python XML/JSON/CSV/PNG assertions against independently enumerated source constants; Inkscape 1.4 render and direct image inspection.

SHA-256: 0328c09348bc35a9fb2c74b91050d12ab5c60e4a02e5f9b33cb0e63e512569b3

comic-source-p3.svg

2026-10-14 · semantic fixture · passed

Author source/geometry/format checks for this exact supplied fixture. Actual rendered previews inspected separately. No consumer AI execution, reader trial, camera rehearsal, filming or physical print/overprint is established.

  • Exact source IDs, coordinates, wording or unchanged text mirror checked as applicable.
  • Safe owned file, bounded canvas/dimensions, or blank unperformed trial card.
  • Artifact bytes hashed after author checks; review acceptance remains separate.

Environment: Read-only Python XML/JSON/CSV/PNG assertions against independently enumerated source constants; Inkscape 1.4 render and direct image inspection.

SHA-256: c97c05aa32a425789c909548b88aa49ea7c0fcee50489d84c397ece79d2f849d

comic-source-p3.png

2026-10-14 · semantic fixture · passed

Author source/geometry/format checks for this exact supplied fixture. Actual rendered previews inspected separately. No consumer AI execution, reader trial, camera rehearsal, filming or physical print/overprint is established.

  • Exact source IDs, coordinates, wording or unchanged text mirror checked as applicable.
  • Safe owned file, bounded canvas/dimensions, or blank unperformed trial card.
  • Artifact bytes hashed after author checks; review acceptance remains separate.

Environment: Read-only Python XML/JSON/CSV/PNG assertions against independently enumerated source constants; Inkscape 1.4 render and direct image inspection.

SHA-256: 0328c09348bc35a9fb2c74b91050d12ab5c60e4a02e5f9b33cb0e63e512569b3

comic-source-p4.svg

2026-10-14 · semantic fixture · passed

Author source/geometry/format checks for this exact supplied fixture. Actual rendered previews inspected separately. No consumer AI execution, reader trial, camera rehearsal, filming or physical print/overprint is established.

  • Exact source IDs, coordinates, wording or unchanged text mirror checked as applicable.
  • Safe owned file, bounded canvas/dimensions, or blank unperformed trial card.
  • Artifact bytes hashed after author checks; review acceptance remains separate.

Environment: Read-only Python XML/JSON/CSV/PNG assertions against independently enumerated source constants; Inkscape 1.4 render and direct image inspection.

SHA-256: b8321d1e4ec1facde4cf3d75d1124f7e9ddc98a800d1ce4cdb1640b4c33fd4ad

comic-source-p4.png

2026-10-14 · semantic fixture · passed

Author source/geometry/format checks for this exact supplied fixture. Actual rendered previews inspected separately. No consumer AI execution, reader trial, camera rehearsal, filming or physical print/overprint is established.

  • Exact source IDs, coordinates, wording or unchanged text mirror checked as applicable.
  • Safe owned file, bounded canvas/dimensions, or blank unperformed trial card.
  • Artifact bytes hashed after author checks; review acceptance remains separate.

Environment: Read-only Python XML/JSON/CSV/PNG assertions against independently enumerated source constants; Inkscape 1.4 render and direct image inspection.

SHA-256: 0328c09348bc35a9fb2c74b91050d12ab5c60e4a02e5f9b33cb0e63e512569b3

comic-lettering-input.md

2026-10-14 · semantic fixture · passed

Author source/geometry/format checks for this exact supplied fixture. Actual rendered previews inspected separately. No consumer AI execution, reader trial, camera rehearsal, filming or physical print/overprint is established.

  • Exact source IDs, coordinates, wording or unchanged text mirror checked as applicable.
  • Safe owned file, bounded canvas/dimensions, or blank unperformed trial card.
  • Artifact bytes hashed after author checks; review acceptance remains separate.

Environment: Read-only Python XML/JSON/CSV/PNG assertions against independently enumerated source constants; Inkscape 1.4 render and direct image inspection.

SHA-256: 67092da259e0a2c79050eb0ccc1f64f6eddc5791e1f1468d66432d5b6c00410a

comic-lettering-output.md

2026-10-14 · semantic fixture · passed

Author source/geometry/format checks for this exact supplied fixture. Actual rendered previews inspected separately. No consumer AI execution, reader trial, camera rehearsal, filming or physical print/overprint is established.

  • Exact source IDs, coordinates, wording or unchanged text mirror checked as applicable.
  • Safe owned file, bounded canvas/dimensions, or blank unperformed trial card.
  • Artifact bytes hashed after author checks; review acceptance remains separate.

Environment: Read-only Python XML/JSON/CSV/PNG assertions against independently enumerated source constants; Inkscape 1.4 render and direct image inspection.

SHA-256: eb86f38f4324fbbda14e636034e015632c86b3449a42223451f2a5468e0ffb97

Copy these instructions

Your browser blocked automatic copying. Select the text below and copy it.