In a design system, why can't Latin line heights and text styles be reused unchanged for Arabic, Devanagari or Japanese text?
answer
- marks above and below the letters
- glyphs that fill the whole square
- no capitals, no native italics
- connected letters resist tracking
- fixed-height rows clip the marks
basics
~20 sScripts differ in vertical extent and texture: Arabic and Devanagari carry marks well above and below the letters, and Japanese glyphs fill a square. Styles need per-script line height and size, and Latin devices like capitals, italics and tracking fail.
solid answer
~50 sLatin text styles are tuned to Latin proportions: a baseline, an x-height and short ascenders and descenders. **Arabic** has tall ascenders, deep descenders and vowel marks above and below; **Devanagari** hangs letters from a horizontal headline and stacks vowel signs above and below it; **Thai** stacks tone marks. At a Latin line height these scripts crowd or collide, and fixed-height rows clip the marks. **Japanese and Chinese** glyphs fill an almost square design space, so at the same nominal size they look larger and denser than Latin, and often want more line height. Latin styling devices fail too: these scripts have no capital letters, italics are not a native form of emphasis, and letter spacing pulls apart Arabic's connected letters. So a system gives each text style per-script values for line height, and sometimes size, maps emphasis to weight, and never sizes containers by a Latin line count.
go deeper
Recall that some scripts have marks far above and below the letters, that CJK glyphs fill a square, and that capitals, italics and tracking are Latin habits.
Explain why each script needs its own line height, and sometimes size, and how emphasis and case transforms are mapped instead of copied.
Show how you would audit text styles for localized markets, add per-script overrides, and fix containers that clip marks, with native readers in the review.
Weigh one generous universal line height against per-script overrides for a system serving many markets, and decide how much script expertise the team must own.
## What Latin text styles quietly assume A text style in a design system bundles a size, a weight, a line height and sometimes letter spacing and a case transform. Every one of those values was tuned by looking at Latin text. Latin letters sit on a baseline, most of their mass lies between the baseline and the **x-height** (the height of a lowercase x), and ascenders and descenders poke out a little above and below. Other scripts break almost every one of those assumptions. ## How scripts differ | Script | Vertical shape | Latin habits that fail | |---|---|---| | Arabic | Tall ascenders, deep descenders, vowel and other marks above and below | No capitals; letters connect, so letter spacing damages words; written right to left | | Devanagari (Hindi, Marathi, Nepali) | Letters hang from a headline bar; vowel signs above and below; stacked conjunct letters | No capitals; needs noticeably more line height | | Thai | Tone and vowel marks stacked above and below | No spaces between words, so line breaking needs word knowledge | | Japanese and Chinese | Glyphs fill a nearly square cell; dense texture | No capitals; no native italics; no spaces between words | The result is that the same nominal size and line height can look cramped in Devanagari, clip marks in Arabic, and look heavier and larger in Japanese than the Latin text beside it. ## What the system adjusts 1. **Per-script line height.** Each text style gets a line height for Latin and overrides for scripts that need more vertical room. Arabic and Devanagari typically need more than Latin at the same size. 2. **Per-script size, where needed.** Japanese at the same nominal size can look larger than Latin; some systems nudge the size so mixed text looks even. This is a visual judgement, checked by eye in real screens. 3. **Emphasis mapped to what the script supports.** Italic in Latin becomes a heavier weight or a color change in Japanese and Arabic; slanting square or connected glyphs looks distorted. 4. **Case transforms and tracking only for Latin.** An all-caps label style does nothing in scripts without letter case, and the wide tracking that often accompanies it pulls connected Arabic letters apart. The system scopes these properties to Latin. 5. **Containers that grow.** Rows, chips and buttons get padding around their text rather than a height derived from Latin line counts, so tall marks are never clipped. 6. **Script-aware line breaking.** Japanese has rules about characters that may not start or end a line, and Thai needs word-level knowledge to break at all; the system should rely on the platform's script-aware breaking rather than forcing breaks at spaces. ## What WCAG says about scripts WCAG 2.2 **SC 1.4.12 Text Spacing** (Level AA) includes an exception: languages and scripts that do not use one of its text style properties can conform using only the properties that exist. Its Understanding document gives Japanese as a language that does not use paragraph spacing, and reports that raising line height in its tests did not separate diacritics from characters. The criterion's second note encourages authors to follow local guidance for readability in each writing system. The standard does not give per-script line heights; those are design decisions. ## An accounting product as an example A small-business accounting product localized into Arabic and Hindi shows the problems quickly: - A fixed-height ledger row sized for one Latin line clips Arabic marks and Devanagari vowel signs. - The all-caps, tracked column headers look fine in English and fall apart in Arabic. - Italic used for draft invoices vanishes in Japanese; a status label or weight change carries the meaning instead. - A tab bar whose labels were sized for short English words must also hold taller Hindi labels without clipping their vowel signs. ## Testing it - Use **real strings** in each script, including the tallest mark combinations, never placeholder Latin text. - Review with **native readers**, who notice cramped or unnatural texture that a checklist misses. - Include per-script overrides in the text style's documentation, so product teams inherit them. - Check the **extremes of each style**: the smallest caption size, where Arabic marks and Devanagari conjuncts are hardest to read, and the largest display size, where Japanese text can overpower neighbouring Latin text. The underlying lesson is that a text style is a set of values tuned for one script. A multi-script system keeps the style's intent, such as body or caption, constant across scripts and lets its values differ where the script demands it.
- Should a system simply use one generous line height for every script to avoid per-script overrides?It is a defensible simplification for interface text, but it costs Latin: a line height loose enough for Devanagari makes Latin paragraphs look gappy and wastes space in dense tables. Most systems keep a Latin value and add overrides only for scripts that need them, which is a small number of documented exceptions.
- How should a text style marked italic behave in Japanese or Arabic?Map the emphasis to something the script supports, such as a heavier weight or a color change, and document the mapping in the text style. Letting the platform slant square or connected glyphs produces distorted text that native readers do not recognise as emphasis.
saying these in an interview costs you the question
- A line height that works for English works for every script at the same size.
- An all-caps style works in any language because the platform converts the case.
- Letter spacing is harmless in Arabic because each letter is a separate shape.
- Italics are a universal way to emphasize text in every script.
- Placeholder Latin text is enough to test layouts for every locale.