Kannada Script
Kannada carries Karnataka, and Microsoft's own OpenType documentation puts its relationship to the rest of this series plainly: the script is "closely related to the Telugu script." It shares Telugu's below-base conjunct system and its refusal to reorder any vowel sign before a consonant. What it doesn't share is the scale: Kannada's stacked consonants compress into small hooks rather than tall towers. This article covers its letters, that family resemblance, and what a font needs to render it correctly.
Kannada, in one screen
An abugida descended from Brahmi, closely related to Telugu, with rounded letterforms and consonant clusters that compress into compact below-base hooks.
Kannada's Unicode block holds 14 independent vowels, the same set as Telugu, including separate short and long e and o. It has 35 consonants, one fewer than Telugu: Kannada's block never assigned a letter in the slot where Telugu keeps its rare archaic LLLA letter, so the traditional Kannada consonant set stops one letter short.
Microsoft's own OpenType documentation opens its Kannada chapter with a direct comparison: the script "is closely related to the Telugu script." That relationship carries through the shaping model. Kannada builds a consonant cluster the same way Telugu does, by reducing the second consonant to a below-base form and dropping it under the first, rather than ligating sideways the way Devanagari does or marking a bare consonant and moving on the way Tamil does.
What differs is scale. Where Telugu's below-base forms often read as a distinct stacked letter sitting under the base, Kannada's tend to compress into a small hook attached to the lower-right corner of the consonant above it. Measured against the same test words, a triple-consonant Telugu cluster reaches roughly 49 pixels below the baseline at a given size; the equivalent Kannada cluster reaches about 29. The mechanism is identical, but Kannada keeps it visually closer to the letter it's attached to.
Kannada has no continuous headline, so the baseline anchors the word the same way it does across the rest of this series. But where Telugu needed a deep zone below the baseline to hold its vertical stacks, Kannada's below-base zone stays shallow, just enough room for a compact hook rather than a tower.
ಕನ್ನಡ, the script's own name, shows the mechanism directly. The doubled ನ in the middle doesn't repeat as two full letters; the second one shrinks to a small hooked mark riding just under and to the right of the first, staying well clear of the deeper zone a Telugu stack would need. The word closes with ಡ carrying no vowel sign at all, its inherent "a" left as is.
Kannada shares Telugu's refusal to reorder any vowel sign before its consonant. Every dependent vowel sign attaches above, below, or to the right of the letter it modifies, in reading order, with nothing moving to the front the way it does in Devanagari, Gurmukhi, or Tamil.
The same three attachment points cover Kannada's vowel signs as cover Telugu's. Many Kannada consonants also carry a small loop or hook of their own, especially at the top-left, a calligraphic detail from the same manuscript tradition that shaped Telugu's rounded strokes, and one a font has to draw consistently across all 35 letters.
When a Kannada consonant has no vowel and another consonant follows, the font substitutes a reduced below-base form and attaches it to the first consonant, the same mechanism Telugu uses under the blwf feature. A cluster of "Ra" behaves the same way here as it does in many Telugu fonts: it compresses into a hook rather than rising above the line as reph.
ಕನ್ನಡ is the script's own name and its simplest example: a doubled consonant compressed to a hook, not a full repeated letter. ಕರ್ಣಾಟಕ ("Karnataka") shows the same treatment applied to an initial "Ra," which many fonts here handle as a below-base hook rather than lifting it into reph position. And ಕೃಷ್ಣ ("Krishna") stacks a vocalic-r vowel sign under ಕ and a second conjunct, ಷ್ಣ, right after it, the same word this series used for Telugu, spelled here with Kannada's more compact result.
Kannada uses the same feature set as Telugu, applied the same way: below-base substitution does most of the conjunct work, half forms offer an alternative reduced shape for some fonts, and above- and below-base mark features position whatever vowel sign the syllable carries. The spec doesn't distinguish the two scripts here; the compactness comes from how individual fonts draw the results.
| Feature | Tag | What it builds here |
|---|---|---|
| Localized forms | locl | Swaps in Kannada-specific glyph shapes where they differ from the script default. |
| Nukta forms | nukt | Rarely used; mostly for sounds transliterated from other languages. |
| Akhand ligatures | akhn | Required ligatures formed before any reordering or stacking happens. |
| Reph | rphf | Defined in the spec for above-base "Ra," though many fonts favor a below-base hook instead. |
| Below-base forms | blwf | Builds the compact hooked forms behind Kannada's conjunct system. |
| Half forms | half | An alternate reduced form for a pre-base consonant, used by some fonts instead of a hook. |
| Post-base forms | pstf | Positions right-attaching signs like ಾ. |
| Above/below-base marks | abvm / blwm | Final positioning of vowel signs that attach above (ಿ ೀ ೆ ೇ ೊ ೋ) or below (ು ೂ ೃ ೄ) the base glyph. |
A font that gets below-base substitution and mark attachment right has covered most of Kannada orthography, the same conclusion this series reached for Telugu, applied to a script that draws the result smaller.
| Symptom | Likely cause | Fix |
|---|---|---|
| Below-base hook overlaps the base letter's own loop | Insufficient side clearance around a compact hook design | Test hooked forms against consonants that already carry a loop or hook on the same side |
| An initial "Ra" cluster renders inconsistently between fonts | Some fonts implement reph (rphf), others fall back to a below-base hook; both are spec-valid | Decide deliberately which convention the font follows and apply it consistently |
| Above-base vowel signs collide with a consonant's own top loop | Fixed anchor position rather than a per-glyph mark attachment point | Use mark-to-base anchors tuned to each consonant's actual top shape |
| Common conjuncts render as a generic hook instead of a refined shape | No dedicated ligature glyph, so the font falls back to mechanical stacking | Draw frequent conjuncts like ಕ್ಷ as dedicated glyphs |
| Rounded, looped strokes look mechanically uniform at heavy weights | Stroke expansion applied evenly without adjusting curve tension | Adjust counters and curve tension as weight increases to preserve the script's calligraphic character |
- 1Draw all 35 consonants and 14 independent vowels at consistent weight, keeping loops and hooks proportionate across the set.
- 2Build below-base hook forms for consonants that commonly cluster, and test them against consonants with their own top loops.
- 3Decide whether an initial "Ra" takes a reph form or a below-base hook, and implement rphf or blwf consistently.
- 4Construct above-base vowel signs with anchors tuned to each consonant's own top shape, not one fixed position.
- 5Test below-base vowel signs against consonants that already carry a hooked conjunct, since both compete for the same zone.
- 6Test across shaping engines and at multiple sizes and weights before calling the script done.
Copy these into a test document. Each targets a different part of the shaping pipeline covered above.