Table of Contents

Letters and Numbers Orientation By Codepoint

This page is intended to help analyze Unicode wrt text orientation. It is not comprehensive at all yet.

Category Codes:

CodeUTR50MSFTMeaning
UUSUpright; translates between horizontal and vertical
RSRSideways; rotates between horizontal and vertical
TUTSTTypeset upright with alternate glyph. Best fallback is just upright.
TRSBRTTypeset upright with alternate glyph. Best fallback is just sideways.

Two modes are presented: Stacking (text-orientation: upright) and Default (TBD).

Letters (L*) and Script-Specific Numbers (N*)

Letters and script-specific (non-Common) numbers are classified by using their script property (including Script Extensions property). Common numbers are listed separately.

CodeNameStackMixedMemoUTRMS
BopoBopomofoUU
BraiBrailleUR:?: Checking with DAISY but haven't got back yet. Most resources say Braille cannot flow vertical. This page indicates Yukimura Sanada developed vertical Braille as R in 16th century, but this is probably different from the today's Braille. This book has vertical modern Braille, but can't identify if it's U or R from the picture. A definite scan of Mongolian Braille, however, shows that it is R.
EgypEgyptian HieroglyphsUUEgypgian hieroglyhs are upright when written in columns
HiraHiraganaUU
KanaKatakanaUUUnclear whether halfwidth katakana should be upright or sideways; voice marks are broken if set upright.
HaniHanUU
HangHangulUU
LisuLisuURLisu-script characters are used intermixed with Latin, so their orientations must matchURUU
MercMeroitic CursiveUUEgypgian hieroglyhs are upright when written in columnsURUR
MeroMeroitic HieroglyphsUUEgypgian hieroglyhs are upright when written in columnsURUU
MongMongolianVVMongolian in Unicode code chart shows vertical glyphs and most font today has glyphs in 90 degree CCW rotated, so they are U from Unicode point of view, but R from UA point of view. Call it V.
OgamOghamRR
OrkhOld TurkicRROld Turkic has a strong tradition of vertical writing. Unclear whether it rotates clockwise or counter-clockwise, but it definitely rotates.
PhagPhags PaVVSame as Mongolian.
YiiiYiUUOld documents show Yi rotated sideways (as vertical script), but one example of modern Yi (typeset horizontally) uses upright-stacked captions
ArabArabicUR:?: Still debating how to handle cursive RTL in stacked modeURRR
MandMandaicUR:?: Still debating how to handle cursive RTL in stacked modeURRR
MiaoMaioUR:?: Needs some research to determine whether U/R or U/UURUU
SyrcSyriacUR:?: Still debating how to handle cursive RTL in stacked modeURRR
Canadian_AboriginalUR:?: UTR#50 has U/U, unclear whyUUUU
Oriya, Telugu, Kannada, Malayalam, Sinhala, Myanmar, Khmer, Tai_Tham, Javanese, ChamUR:?: Unclear why MSFT chose R/R, seems wrongURRR
Linear_B, Ugaritic, Old_Persian, AvestanUR:?: Unclear why MSFT chose U/U. Cuneiform in particular derives (via rotation) from vertical writing, so U/U seems an illogical choiceURUU
All othersURUnless the script has a vertical tradition, it is sideways in mixed mode and upright in stacked

There are some exceptions:

CodeDescriptionCharStackMixMemo
U+30FCKATAKANA-HIRAGANA PROLONGED SOUND MARKTRTR
U+FF70HALFWIDTH KATAKANA-HIRAGANA PROLONGED SOUND MARKTRR:?: Halfwidth?
U+FF61-FFDF, U+FFE8-FFEFAll halfwidth lettersUR

Some interesting cases:

Letterlike Symbols Block Letters

See also Symbols from this block and Math symbols from this block

U+2102DOUBLE-STRUCK CAPITAL CURPart of mathematical double-struck set
U+2107EULER CONSTANTURMatch PLANCK CONSTANT
U+210ASCRIPT SMALL GURPart of mathematical script set
U+210BSCRIPT CAPITAL HURPart of mathematical script set
U+210CBLACK-LETTER CAPITAL HURMatch other math letters
U+210DDOUBLE-STRUCK CAPITAL HURPart of mathematical double-struck set
U+210EPLANCK CONSTANTURPart of mathematical italic set
U+210FPLANCK CONSTANT OVER TWO PIURMatch PLANCK CONSTANT
U+2110SCRIPT CAPITAL IURPart of mathematical script set
U+2111BLACK-LETTER CAPITAL IURMatch other math letters
U+2112SCRIPT CAPITAL LURPart of mathematical script set
U+2113SCRIPT SMALL LUUEA compatibility unit is upright. Not unified with mathematical script l.
U+2115DOUBLE-STRUCK CAPITAL NURPart of mathematical double-struck set
U+2119DOUBLE-STRUCK CAPITAL PURPart of mathematical double-struck set
U+211ADOUBLE-STRUCK CAPITAL QURPart of mathematical double-struck set
U+211BSCRIPT CAPITAL RURPart of mathematical script set
U+211CBLACK-LETTER CAPITAL RURMatch other math letters
U+211DDOUBLE-STRUCK CAPITAL RURPart of mathematical double-struck set
U+2124DOUBLE-STRUCK CAPITAL ZURPart of mathematical double-struck set
U+2126OHM SIGNΩUUEA compatibility unit is upright. :!: NFC-folds to omega
U+2128BLACK-LETTER CAPITAL ZURMatch other math letters
U+212AKELVIN SIGNKUUEA compatibility unit is upright. :!: NFC-folds to K
U+212BANGSTROM SIGNÅUUEA compatibility unit is upright. :!: NFC-folds to Aring
U+212CSCRIPT CAPITAL BURPart of mathematical script set
U+212DBLACK-LETTER CAPITAL CURMatch other math letters
U+212FSCRIPT SMALL EURPart of mathematical script set
U+2130SCRIPT CAPITAL EURPart of mathematical script set
U+2131SCRIPT CAPITAL FURPart of mathematical script set
U+2132TURNED CAPITAL FURClaudian must match Latin
U+2133SCRIPT CAPITAL MURPart of mathematical script set
U+2134SCRIPT SMALL OURPart of mathematical script set
U+2139INFORMATION SOURCEUUSymbolic, not math
U+213CDOUBLE-STRUCK SMALL PIURMatch double-struck Latin
U+213DDOUBLE-STRUCK SMALL GAMMAURMatch double-struck Latin
U+213EDOUBLE-STRUCK CAPITAL GAMMAURMatch double-struck Latin
U+213FDOUBLE-STRUCK CAPITAL PIURMatch double-struck Latin
U+2135ALEF SYMBOLURMath symbol
U+2136BET SYMBOLURMath symbol
U+2137GIMEL SYMBOLURMath symbol
U+2138DALET SYMBOLURMath symbol
U+2145DOUBLE-STRUCK ITALIC CAPITAL DURMath symbol, match double-struck Latin
U+2146DOUBLE-STRUCK ITALIC SMALL DURMath symbol, match double-struck Latin
U+2147DOUBLE-STRUCK ITALIC SMALL EURMath symbol, match double-struck Latin
U+2148DOUBLE-STRUCK ITALIC SMALL IURMath symbol, match double-struck Latin
U+2149DOUBLE-STRUCK ITALIC SMALL JURMath symbol, match double-struck Latin
U+214ETURNED SMALL FURClaudian must match Latin