learn-ai-illustration-with-phoebe / Session 4 of 6
Learn AI Illustration with Phoebe · Session 4 of 6

The lettering law

Every image model misspells. People treat it as a quality problem that the next version will fix, and write "with the words AUTUMN ROAST in elegant lettering" one more time. It is not a quality problem. The text encoder that reads your prompt was never shown a letter; it was shown tokens, and a token is not a glyph. Researchers got text accuracy from under twenty percent to nearly ninety, and they did it by replacing the encoder, not the prompt. Tonight is that mechanism, the three vendors who say so in their own documentation, the rule that follows, and a bench that reads your brief for the eleven characters that would break it.

🔴 Bench night Laptop, not paper Bring your control sheet and a real prompt 45 min
0-3 · Welcome 3-14 · The mechanism, the admissions, the law 14-40 · The bench: six briefs, then yours 40-45 · Q&A
Part 0

Where we start

Sessions 1 to 3 built the picture: a dated version, a reference kit, six sentences of style, a composition with an empty third. Daybreak's sleeve is the asset that tests whether any of that was serious, because it carries an origin claim that a lawyer signed word for word, and a model that gets one character wrong has printed a false claim on four thousand bags. Tonight is why that character will be wrong, eventually and unpredictably, and what to do instead.

🎫 Clear all three quiz questions to stamp your passport Live = presented in the 45 minutes Self-study = the full depth, after class

★ What you walk out with tonight. A brief for one real asset that the bench grades "concept before art, type kept out", the two clauses that got it there, and the mechanism argument in two sentences for the colleague who says the next model will fix it.

Every number on the bench is counted in the words of your brief against a fixed lexicon you can read in the source: four kinds of concrete anchor, ten families of style word and the six pairs among them that contradict, the characters inside quotation marks, and the presence of a refusal clause and a type zone. Nothing is generated; the bench sees what the model sees, which is the text. The one thing that is not a count is the verdict, and it wears a badge saying so.

Part 1 · covers the mechanism

The encoder never saw a letter

5 min live

A text-to-image model has two halves. The half that reads your prompt turns it into a list of numbers, and it does so by splitting the text into tokens, which are chunks of characters chosen for how often they occur, not for what they look like. "Autumn" might be one token or two. The half that paints has to turn that token into six glyphs in order, and nothing in the token tells it what the glyphs are.

WHAT THE ENCODER SEES tokens: chunks chosen by frequency, each one a number Aut umn Roast id 21473 id 8830 id 2216 Three numbers. Nothing in 8830 says it ends in an n, or that it has three letters, or what an n looks like. the gap predict glyphs from numbers WHAT THE PAINTER MUST PRODUCE eleven glyphs, in order, each with a shape A u t u m n R o a s t The coral boxes are where it goes: a doubled letter, a dropped one, a shape that is nearly an s. Unpredictably. HOW IT WAS ACTUALLY FIXED, IN THE RESEARCH Character-aware encoders: 30+ point gains on rare words Liu et al., ACL 2023: models "lack character-level input features" Glyph-ByT5: text accuracy under 20% to nearly 90% ECCV 2024: only after fine-tuning a byte-level encoder on glyphs Both fixes change the encoder. Neither is a prompt. A capability the encoder lacks cannot be typed into it.
🔍 Click to zoom - the gap in the middle is the whole problem, and it is a property of the architecture, not of the version
LiveWhy "prompt harder" cannot work, in two sentences3 min▶

First sentence: the encoders in the popular text-to-image models "lack character-level input features, making it much harder to predict a word's visual makeup as a series of glyphs." That is Liu and colleagues at Google Research (ACL 2023), and their character-aware variants beat the character-blind ones by more than thirty points on rare words. Second sentence: when Glyph-ByT5 (ECCV 2024) pushed design-benchmark text accuracy from under twenty percent to nearly ninety, it did so by fine-tuning a byte-level text encoder on glyph-aligned data. The two requirements they name are "character awareness and alignment with glyphs." Both are properties of the encoder.

So a model whose encoder is token-based cannot be prompted into reliable lettering, for the same reason you cannot be talked into seeing ultraviolet. The competence has to be trained in. Until a vendor tells you, in the documentation and not the launch post, that it has changed the encoder, every word you ask it to spell is a coin it will eventually drop. On four thousand printed bags, eventually is the operative word.

Self-studyThree vendors' own words, and the one counter-claim4 min▶

Read on 18 September 2026, from the documentation pages and nowhere else.

  • OpenAI, image generation guide: the model "can still struggle with precise text placement and clarity", and with "placing elements precisely in structured or layout-sensitive compositions." Two admissions in one guide, one about type and one about layout.
  • Ideogram, whose entire pitch is typography, on its text-and-typography page: accuracy is best in English and non-Latin scripts "often produce unpredictable results"; longer text raises "spelling errors, distortions, or incomplete words"; and, decisively: "consider using Ideogram to generate the visual concept and then add the text manually using graphic editing tools afterward." The typography vendor recommends setting the type yourself.
  • Midjourney: the Parameter List, Version, Style Reference, Edit Model, Omni Reference and Terms pages make no claim about rendering type and list no text control. That silence is taught as an absence, not a quote, and it is the most honest position of the three.
  • Google is the counter-claim: the Gemini image docs promise "legible, stylized text for infographics, menus, diagrams, and marketing assets." Read it carefully. Legible is not spell-correct, it is not your brand's typeface, it is not an exact string, and it is not editable afterwards. If the claim is true it moves the failure rate; it does not move the six properties in Part 2.
Real world

Daybreak's spring sleeve went to a printer with "SINGLE ORGIN" on it. It had passed three people, because a rendered word at 11 point on a proof looks like a word. The reprint cost more than the design. The origin claim is the one string on the bag that a lawyer signed, and the model had changed it by one letter.

Part 2 · covers the law

Refuse the lettering, reserve the zone, set the type

4 min live

The rule follows from the mechanism, and it has three clauses. The model paints the picture and is told, explicitly, to paint no letters. The composition leaves a zone empty for the type. The type is set afterwards, in HTML or SVG, by a person. The result is one asset in two layers, and only the top layer has words in it.

LAYER 2 · TYPE, SET BY HAND AUTUMN ROAST Single origin, Sidamo. Legal-approved string, HTML. exact characters · brand typeface · a person set it LAYER 1 · PICTURE, ALL LETTERING REFUSED type zone: empty by instruction mug · counter · light · grain WHAT HAND-SET TYPE IS THAT RENDERED TYPE IS NOT Spell-correct by construction the string is the string; nothing predicted it Editable legal changes one word, nothing is regenerated Translatable six markets, one picture, six type layers Selectable and searchable a reader can copy it; a search engine can find it Accessible a screen reader reads text; it cannot read a picture of text Yours to arrange the arrangement is a human choice, and it is on record Rendered lettering has none of these six even when it happens to be spelled right. That is the law, and it is not about quality.
🔍 Click to zoom - the dashed rectangle in the picture layer is the only instruction about type the model ever receives: leave this empty
LiveThe two clauses, ready to paste3 min▶

Two sentences at the end of every brief, before the ratio. They are the difference between the fourth and fifth rungs on the bench below.

Refusal and zone
No text, no lettering, no logo anywhere in the image.
Keep the upper third as quiet negative space; the headline is set later in HTML.

The first clause is a negative constraint, and negative constraints persuade rather than bind, so it will occasionally be ignored; when it is, the asset is rejected on sight and regenerated, which costs a minute. The second clause is a composition instruction, which the reference kit from session 2 can reinforce with a composition reference that has an empty third. Together they mean the model is never asked to spell, so it never spells wrong, and the only spelling on the asset is the string a person typed.

The request that fails eventually
... with the title "Autumn Roast" in elegant lettering across the top.

Eleven characters, and the bench grades the whole brief red for them. Not because the picture would be worse, but because the encoder cannot be trusted with them and the fix does not live in the prompt.

Self-studyWhy the composite is the illustration, not a workaround3 min▶

Two-layer assets are how print and web illustration have always worked. A magazine cover is a photograph and a type layer. A poster is an image and a typeset headline. Nobody asks the photographer to also paint the masthead. The model is the photographer here, and asking it to letter is asking the wrong craftsperson. The composite is not a patch for a weak model; it is the ordinary structure of a finished piece, and it is the structure that keeps every downstream job (translation, legal edits, accessibility, search) possible.

There is a second reason, which session 5 carries in one card: a picture where a person chose the composition, refused the lettering, set the type and arranged the layers is a picture with a documented human contribution in it. A picture that is one prompt and one PNG is not. The two-layer asset is the version that can be shown to have been made by someone.

The bench

One asset, six briefs, one trap

★ 26 min · everyone drives

Six briefs for Daybreak's email hero. Load them in order, read the eight counts before the verdict, then paste in a prompt you have actually used. The bench works on whatever is in the box.

The brief bench

Every number except the verdict is counted in the text of the brief against a fixed lexicon: anchors, style families, contradictions, quoted characters, refusal, zone, ratio, references. Edit the brief and the numbers follow.

The ladder below was read off this bench in a browser before this page was written. Load the presets in the same order and you will get the same numbers, because they come from the same counting.

Brief Anchors Style Conflicts Lettering Refused Zone Verdict The first prompt 0 7 0 0 no no Pretty, but whose? Concept before art 15 2 0 0 no no A real picture, no plan for type With the title spelled in 16 3 0 11 chars no no Asks the model to spell Lettering refused, zone reserved 16 2 0 0 yes yes Concept first, type kept out then: more style words 15 16 4 0 no no Style words at war Wired to the reference kit 22 2 0 0 yes yes Wired to the kit, 4 refs Seven style words and no anchors is not a brief. Eleven quoted characters are enough to fail. Fourteen more adjectives added four contradictions and no picture. The two clauses moved the verdict from amber to good and changed nothing else. Counted 2026-09-19 in a headless browser via the bench's own API, before this page quoted a number.
🔍 Click to zoom - the coral row is the target; the row below it is what most people do when a picture disappoints, and it is measurably worse
LiveRead the ladder: it gets worse in two directions4 min▶
  • The first prompt: seven style words, zero anchors. "Beautiful", "trending on artstation", "masterpiece", "highly detailed", "8k", "stunning" and "illustration". Every word is about how good the picture should be and not one names an object, a light or a colour. There is no picture here for a model to make; there is a request to be impressed.
  • Concept before art: fifteen anchors, two style words. A ceramic mug, a worn oak counter, three roasted beans and a green one, morning light from the left, amber and burnt orange and cream, flat vector with paper grain, 3:2. Fifteen things a painter could be wrong about. This is a picture.
  • With the title spelled in: one added line, verdict red. Eleven characters inside quotation marks, and the brief that was a picture is now also a spelling test the encoder will eventually fail.
  • Refused and reserved: the two clauses. Same fifteen anchors, same two style words, plus "no text, no lettering, no logo" and an empty upper third. The verdict goes to good. Nothing about the picture changed; what changed is that the model is never asked to do the one thing it cannot.
  • More style words: the trap. Fourteen adjectives from the prompt guides bolted onto the concept brief. Sixteen style words across seven families, and four of them contradict: flat against photorealistic, flat against watercolour, watercolour against photorealistic, flat against highly detailed. Every anchor is still there. The picture did not get richer. The instruction became incoherent, and an incoherent instruction to a persuading layer is a coin toss per adjective.
  • Wired to the kit: four reference handles. The refused brief plus the style reference set, its weight, a named asset to match, and a recorded seed with its ninety-nine percent written next to it. The verdict adds "wired to the kit". This is the brief that can be run again next month.
LiveNow yours: paste and read10 min▶

Paste a prompt you have actually used. Read the eight counts in order: anchors first, because a brief with fewer than five is not describing a picture yet; then style words and conflicts, because most real prompts have three to eight style words and at least one pair at war; then lettering, because most real prompts ask for some.

Then fix it in the order the counts suggest. Add anchors until you pass five: a material, a light, a placement, a colour. Cut style words until one family is left. Move every quoted string out of the brief and into a note that says "set in HTML". Add the two clauses. Watch the verdict move, and notice that at no point did you add a quality word.

If you finish early, take the concept brief and try to break the anchor count without touching the style words: remove "oak", remove "from the left", remove "3:2". The verdict degrades one step at a time, which is what a count is for.

The number to bring to session 5. Your anchors and your reference handles on the best brief. Session 5 is what happens when you run that brief ten times, and the handles are the only part of it that make run seven look like run one.

Part 3 · covers honest limits

What the counts can and cannot tell you

3 min live

A bench that only reports what it can count has to be clear about what it cannot. Four limits, on the widget and here.

LimitWhat it means for your numbers
The brief, not the imageA perfect brief can still produce a bad picture and the bench will not know. It measures the one input a person fully controls, which is also the one input most people never edit.
Lexicon-basedA style word not on the ten lists is not counted; a colour not on the colour list is not an anchor. The lists are in the source file and are deliberately finite. If your brand's colour is missing, the fix is a word in the list, not a guess.
Anchors are counted, not judgedTwenty anchors that contradict each other still count as twenty. Coherence of the picture is your job; the bench only knows whether you described one.
The verdict is a rule of thumbIts thresholds (three and five anchors, six style words, two conflicts) are judgement, badged as such. The eight counts above it are not.
Self-studyWhy the bench counts words and not pixels3 min▶

A course that ships no generated image cannot grade one, and would not want to: a picture is judged by a person with the six sentences from session 2 in hand, and a browser scoring aesthetics would be inventing a number. What a browser can do honestly is read the brief the way the encoder reads it, as text, and count the things in it that are known to go wrong. That is a smaller claim and a true one, and it targets the layer where most people spend all their effort and none of their attention.

Real world

Daybreak's designer pasted her real spring prompt into the bench: 61 words, 3 anchors, 9 style words across five families, two conflicts, and the phrase "with our logo in the corner". Red on two counts. She had regenerated it forty times in April. The fix took four minutes and was made entirely by deleting.

Homework

Before session 5

25 min
  1. Bench your three most-used prompts and record anchors, style words, conflicts and lettering for each. Then rewrite the worst one to "concept before art, type kept out" by deleting first and adding anchors second.
  2. Find every rendered word in one asset your organisation has shipped this year. Check each one character by character. Write down how many you found and how many were wrong. Most people find at least one.
  3. Set one headline by hand over any picture, in HTML or in a design tool, and export it. Compare the time taken with the time your last "fix the text" regeneration loop took.
  4. Add a "type set by hand" line to your control sheet for the asset from session 1, naming the exact string and who approves it. Session 5 adds the last column.
Check yourself

Three questions

Clear all three and session 4 gets stamped in your passport.

1 · A colleague says the next model version will fix spelling, so the type can stay in the prompt. What is the accurate reply?

Liu et al. named the cause: models "lack character-level input features". Glyph-ByT5 named the fix: "character awareness and alignment with glyphs", trained into a byte-level encoder. Both are architecture. OpenAI and Ideogram document the limit in their own guides, and Ideogram tells you to add the text afterwards.

2 · The "more style words" brief keeps all fifteen anchors and adds fourteen adjectives. Why does the bench grade it worse than the plain concept brief?

The ratio is still there and so are the anchors. What the bench found is the conflicts, and the conflicts are the reason the same prompt gives a flat picture one run and a photograph the next. Fewer style words in one family is a stronger instruction than many in seven.

3 · What does hand-set type have that rendered type does not, even when the rendered word happens to be spelled correctly?

The law is not about quality. A correctly rendered word is still a picture of a word: legal cannot edit it, a translator cannot swap it, a search engine cannot read it, and a screen reader says "image". Six properties, all downstream jobs, all lost the moment the letters are pixels.

Sources covered

What this session teaches, and where it came from

✓Liu et al., ACL 2023 (arXiv 2212.10562)Character-blind encoders; 30+ point gains on rare words with character-aware ones
✓Glyph-ByT5, ECCV 2024 (arXiv 2403.09622)Under 20% to nearly 90% only after fine-tuning a byte-level encoder on glyph-aligned data
✓OpenAI image guide"Can still struggle with precise text placement and clarity"; layout-sensitive compositions
✓Ideogram text and typography pageEnglish-only accuracy, length degrades spelling, "add the text manually... afterward"
✓Google Gemini image docsThe "legible, stylized text" counter-claim, read for what it does and does not promise
✓Midjourney documentationNo text claim and no text parameter across six pages; taught as an absence
✓The eight countsComputed in assets/il-live.js against a fixed lexicon; verified ladder in the source map
◐"Ideogram 90-95% vs Midjourney 30-40%"Widely repeated, no primary benchmark located; not stated

Every fact on this page, and its verification tier, is recorded in the course's source map.

Session 4 cheat sheet · pin this

Tokens, not glyphsThe encoder never saw a letter. A capability it lacks cannot be typed in.
The fix was the encoderUnder 20% to nearly 90%, by fine-tuning a byte-level one. Not a prompt.
Two clausesNo text, no lettering, no logo. Keep the upper third empty; type set later.
Six propertiesSpell-correct, editable, translatable, selectable, searchable, accessible.
Five anchors before one adjectiveMaterial, light, place, colour, number. Then one style family.
More style words, worse briefSixteen across seven families made four contradictions and no picture.