BabelStone Fonts

BabelStone Han


BabelStone Han is a free Unicode CJK font with over 32,600 Han characters (hanzi, kanji, hanja). It is a Song/Ming style (宋体/明體) font, with glyphs modelled on the official character forms used in the People's Republic of China. It covers both traditional Chinese characters and simplified Chinese characters, and includes many rare or archaic characters that are not found in most CJK fonts. It also includes nearly 4,000 currently unencoded Han characters in the Private Use Area (PUA). The current version of BabelStone Han supports Unicode 9.0.

The font was created by merging the "AR PL Mingti2L Big5" font (13,068 CJK Unified Ideographs) and "AR PL SungtiL GB" font (6,763 CJK Unified Ideographs), which were both released by Arphic Technology (文鼎科技) in 2001 under the original Arphic Public License [see below]. The merged font, comprising 14,907 CJK Unified Ideographs, was then converted to Unicode mappings, and has since been expanded to cover a wide range of traditional and simplified characters in the CJK, CJK-A, CJK-B, CJK-C, CJK-D, and CJK-E blocks, as well as many general Unicode characters. The original glyphs have been modified where appropriate to match the G-source glyphs given in the Unicode code charts. The font does not incorporate bitmaps, and is best viewed on screen at large point sizes (16 pts or greater).

This font is under continuous development, as tens of thousands of additional CJK ideographs are scheduled for inclusion in Unicode over then next few years. I intend to add as many of these new characters to BabelStone Han as I can, but I will never be able to include anywhere near all the CJK ideographs that have been and will be added to Unicode, so I am concentrating on G-source additions (i.e. characters used in China), particularly those added in CJK-C and later extensions. However, if there are any characters in any CJK block that you would like to have added to BabelStone Han urgently just let me know (by twitter or email) and I will try to fast-track their inclusion in the font. Please also let me know if you notice any glyph errors.

Summary of Coverage of CJK Unified Ideographs in BabelStone Han
Unicode Block Total Coverage G-Source Coverage
Characters Percentage Characters Percentage
CJK Unified Ideographs20,950 / 20,950100%20,914 / 20,914100%
CJK Unified Ideographs Extension A2,349 / 6,58235.7%2,206 / 6,19235.6%
CJK Unified Ideographs Extension B5,220 / 42,71112.2%4,090 / 30,52513.4%
CJK Unified Ideographs Extension C1,769 / 4,14942.6%1,119 / 1,119100%
CJK Unified Ideographs Extension D222 / 222100%76 / 76100%
CJK Unified Ideographs Extension E2,105 / 5,76236.5%1,879 / 2,81566.7%
CJK Compatibility Ideographs12 / 12100%0 / 0N/A
Total32,627 / 80,39240.6%30,284 / 61,64249.1%


BabelStone Han is released under the original Arphic Public License, and may be used and distributed freely for personal or commercial purposes. The license also allows you to modify the font in any way you like (e.g. add/remove/modify glyphs or change the character mappings) without seeking my permission, as long as the modified font retains the Arphic Public License. If you do intend to distribute a modified version of BabelStone Han, please ensure that the font name (and all relevant fields in the name table) is changed to something different, so as not to cause confusion between my font and your modified font. In particular, please do not use "BabelStone" in the font name.

In 2010 Arphic Technology released two new public fonts, "AR PLMingU20 Light" (文鼎PL明體U20-L) and "AR PLBaosong2GBK Light" (文鼎PL報宋2GBK), both under a new Arphic Public License. The old license (which BabelStone Han uses) explicitly allows distributers of the original or modified font to make a financial gain ("If you wish, you can charge for this service"), whereas the terms of the new license explicitly restrict distribution of the original or modified font to "only for non-profit purpose". The two new fonts both have complete coverage of the 20,902 original characters in the main CJK block, and it would have saved me hundreds of hours of work to use one of these fonts as the basis for my font, but I prefer to use the old fonts with the original, unrestricted license.


Traditional Chinese Text

Simplified Chinese Text

Character Repertoire

BabelStone Han currently has coverage of the following Unicode blocks. The font is a dual-width font, with a mixture of full-width characters and half-width characters, as indicated in the column headed "Character Width".

Unicode Block Range Coverage Character Width Notes
Basic Latin00000..0007F97 out of 128 charactersHalf-width 
Latin-1 Supplement00080..000FF91 out of 128 charactersHalf-width 
Latin Extended-A00100..0017F36 out of 128 charactersHalf-width 
Latin Extended-B00180..0024F22 out of 208 charactersHalf-width 
IPA Extensions00250..002AF25 out of 96 charactersFull-width 
Spacing Modifier Letters002B0..002FF30 out of 80 charactersHalf-width 
Combining Diacritical Marks00300..0036F16 out of 112 charactersMixedFull-width combining overline, underline, double underline, dot above/below, and ring above/below for use with Han ideographs; and nine half-width combining diacritical marks for use with Latin letters.
Greek and Coptic00370..003FF49 out of 135 charactersFull-width 
Cyrillic00400..004FF66 out of 256 charactersFull-width 
Tibetan00F00..00FFF20 out of 211 charactersFull-widthReligious and astrological symbols
Mongolian01800..018AF3 out of 156 charactersFull-widthLozenge-shaped punctuation marks
Combining Diacritical Marks Extended01AB0..01AFF1 out of 15 charactersFull-widthCombining wavy line below for use with Han ideographs
Phonetic Extensions01D00..01D7F6 out of 128 charactersHalf-width 
Latin Extended Additional01E00..01EFF20 out of 256 charactersHalf-width 
General Punctuation02000..0206F111 out of 111 charactersMixed 
Superscripts and Subscripts02070..0209F42 out of 42 charactersHalf-width 
Currency Symbols020A0..020CF4 out of 31 charactersFull-width 
Combining Diacritical Marks for Symbols020D0..020FF4 out of 33 charactersFull-widthCombining enclosing square
Letterlike Symbols02100..0214F26 out of 80 charactersFull-width 
Number Forms02150..0218F53 out of 60 charactersFull-width 
Arrows02190..021FF14 out of 112 charactersFull-width 
Mathematical Operators02200..022FF37 out of 256 charactersFull-width 
Miscellaneous Technical02300..023FF26 out of 255 charactersFull-width 
Enclosed Alphanumerics02460..024FF160 out of 160 charactersFull-width 
Box Drawing02500..0257F128 out of 128 charactersFull-width 
Block Elements02580..0259F32 out of 32 charactersFull-width 
Geometric Shapes025A0..025FF96 out of 96 charactersFull-width 
Miscellaneous Symbols02600..026FF53 out of 256 charactersFull-width 
Dingbats02700..027BF15 out of 192 charactersFull-width 
Braille Patterns02800..028FF256 out of 256 charactersFull-width 
Miscellaneous Symbols and Arrows02B00..02BFF7 out of 206 charactersFull-width 
Latin Extended-C02C60..02C7F1 out of 32 charactersHalf-width 
Supplemental Punctuation02E00..02E7F7 out of 67 charactersFull-width 
CJK Radicals Supplement02E80..02EFF115 out of 115 charactersFull-width 
Kangxi Radicals02F00..02FDF214 out of 214 charactersFull-width 
Ideographic Description Characters02FF0..02FFF12 out of 12 charactersFull-width 
CJK Symbols and Punctuation03000..0303F55 out of 64 charactersFull-width 
Hiragana03040..0309F93 out of 93 charactersFull-widthDecomposed (NFD) characters and named sequences also supported
Katakana030A0..030FF96 out of 96 charactersFull-widthDecomposed (NFD) characters and named sequences also supported
Bopomofo03100..0312F41 out of 41 charactersFull-widthPoor quality glyphs
Kanbun03190..0319F16 out of 16 charactersHalf-width 
Bopomofo Extended031A0..031BF27 out of 27 charactersFull-widthPoor quality glyphs
CJK Strokes031C0..031EF36 out of 36 charactersFull-width 
Katakana Phonetic Extensions031F0..031FF16 out of 16 charactersFull-width 
Enclosed CJK Letters and Months03200..032FF191 out of 254 charactersFull-width 
CJK Compatibility03300..033FF73 out of 256 charactersFull-width 
CJK Unified Ideographs Extension A03400..04DBF2,349 out of 6,582 charactersFull-width 
Yijing Hexagram Symbols04DC0..04DFF64 out of 64 charactersFull-width 
CJK Unified Ideographs04E00..09FFF20,950 out of 20,950 charactersFull-widthCharacters in this block need checking for correct glyph shapes
Latin Extended-D0A720..0A7FF2 out of 160 charactersHalf-width 
Private Use Area0E000..0F8FF4,077 out of 6,400 charactersFull-widthE000..E01D: Song and Yuan dynasty flute notation symbols.
E020..E04B: Tang and Song dynasty lute notation symbols.
E050..E064: Miscellaneous symbols.
E91D..F7D8: 3,567 unencoded CJK ideographs and ideograph components.
NB PUA mappings may vary from version to version of BabelStone Han, and characters will be removed from the PUA as and when they are encoded. The current PUA allocation of BabelStone Han is detailed here. The CJK characters in the PUA of this font are also available in the BabelStone Han PUA font, which also includes some unencoded characters which may not be in the latest released version of the BabelStone Han font.
CJK Compatibility Ideographs0F900..0FAFF472 out of 472 charactersFull-width 
Variation Selectors0FE00..0FE0F16 out of 16 charactersFull-width 
Vertical Forms0FE10..0FE1F10 out of 10 charactersFull-width 
CJK Compatibility Forms0FE30..0FE4F32 out of 32 charactersFull-width 
Small Form Variants0FE50..0FE6F26 out of 26 charactersFull-width 
Halfwidth and Fullwidth Forms0FF00..0FFEF173 out of 225 charactersFull-width 
Specials0FFF0..0FFFF5 out of 5 charactersFull-width 
Kana Supplement1B000..1B0FF2 out of 2 charactersFull-widthArchaic Hiragana and Katakana letters added in Unicode 6.0
Tai Xuan Jing Symbols1D300..1D35F87 out of 87 charactersFull-width 
Counting Rod Numerals1D360..1D37F18 out of 18 charactersFull-width 
Mahjong Tiles1F000..1F02F44 out of 44 charactersFull-width 
Domino Tiles1F030..1F09F100 out of 100 charactersFull-width 
Playing Cards1F0A0..1F0FF82 out of 82 charactersFull-width 
Enclosed Alphanumeric Supplement1F100..1F1FF191 out of 191 charactersFull-width 
Enclosed Ideographic Supplement1F200..1F2FF58 out of 58 charactersFull-width 
Miscellaneous Symbols And Pictographs1F300..1F5FF61 out of 768 charactersFull-width 
Emoticons1F600..1F64F80 out of 80 charactersFull-width 
Ornamental Dingbats1F650..1F67F48 out of 48 charactersFull-width 
Transport and Map Symbols1F680..1F6FF4 out of 103 charactersFull-width 
Geometric Shapes Extended1F780..1F7FF85 out of 85 charactersFull-width 
Supplemental Symbols and Pictographs1F900..1F9FF15 out of 82 charactersFull-width 
CJK Unified Ideographs Extension B20000..2A6DF5,220 out of 42,711 charactersFull-width 
CJK Unified Ideographs Extension C2A700..2B73F1,769 out of 4,149 charactersFull-widthAdded in Unicode 5.2
CJK Unified Ideographs Extension D2B740..2B81F222 out of 222 charactersFull-width"Urgent need characters", added in Unicode 6.0
CJK Unified Ideographs Extension E2B820..2CEAF2,105 out of 5,762 charactersFull-widthAdded in Unicode 8.0
CJK Compatibility Ideographs Supplement2F800..2FA1F542 out of 542 charactersFull-widthGlyphs are the same as the corresponding unified ideograph (glyphs will be corrected where necessary in a future version of this font)
Tags0FE00..0FE0F97 out of 97 charactersFull-width 
Variation Selectors Supplement0FE00..0FE0F240 out of 240 charactersFull-width 
Supplementary Private Use Area-A0FE00..0FE0F2,178 out of 65,534 charactersFull-widthCircled digits and circled Chinese numbers

Glyph Forms

The glyph forms in BabelStone Han are in principle based on the G-source glyph forms defined by the Standardization Administration of China that are given in the Unicode code charts:

If there is no G-source glyph for a particular character included in BabelStone Han, then I use a glyph form that is consistent with G-source glyph conventions, even if it does not exactly match the glyh form in the Unicode code chart (see for example U+9FC4 鿄). For the basic CJK block there are an unknown number of characters that do not have the correct G-source glyph form, but the number of incorrect glyphs is being reduced with each new version of BabelStone Han that I release. Please inform me of any incorrect glyph forms that you notice.

In a few cases I deliberately do not follow the G-source glyph form given in the Unicode code charts. Occasionally the glyph form given in an authoritative PRC dictionary such as Hànyǔ Dà Zìdiǎn 漢語大字典 or Xiàndài Hànyǔ Cídiǎn 现代汉语词典 seems preferable to the code chart glyph form, and that has been used instead.

In some cases the G-source glyphs are not consistent, and I have used the expected G-source glyph form rather than the actual G-source glyph form. For example, the radical for characters sourced to GZJW (Yīnzhōu Jīnwén Jíchéng Yǐndé 殷周金文集成引得) in Exts. C and E is written differently to the standard form of the radical, and in these cases I have used the standard radical form.

In cases where I have deliberately not used the G-source code chart glyph, this glyph is included in the font as an unmapped glyph which can be accessed using either the Character Variant (cv01..cv99) or Stylistic Set (ss01..ss20) OpenType feature. In addition, for some characters with more than one acceptable glyph form, the glyph not given in the code charts is accessible using these features. The Stylistic Set feature is not the appropriate feature to use, but I have included it in the font as this feature can be applied with recent versions of Microsoft Word, whereas it seems that the Character Variant feature cannot. On web pages it is possible to select alternate glyphs for BabelStone Han characters by using the "font-feature-settings" property in a CSS stylesheet (e.g. .cv01 { font-family: 'BabelStone Han'; font-feature-settings: "cv01"; }). At present only 65 alternate glyphs are included in the font, but I expect to add many more in future versions of the font (these are listed in BSHanVariants.docx and BSHanVariants.pdf, but the supra-BMP glyph variants are not displayed correctly in the pdf).

Source Coverage

BabelStone Han covers all encoded Han characters in the following dictionaries:

Current Tasks

The following tasks are what I am focussing on completing at present.

OpenType Features

Script Language Features Explanation
CJK Ideographic <hani> Default <dflt> Character Variant <cv01>
Stylistic Set <ss01>
Alternate glyph forms for some CJK unified ideographs, as discussed under "Glyphs" above.
Latin <latn> Default <dflt> Glyph Composition Decomposition <ccmp> Roman numeral liagatures for IIII ( + ZWJ + ) and VIIII ( + ZWJ + ).
Hiragana and Katakana <kana> Default <dflt> Glyph Composition Decomposition <ccmp> Used to compose decomposed Hiragana and Katakana characters, including extended katakana sequences used for Ainu.

Version History

Version Date Coverage Notes
1.00 2009-05-25 14,907 CJK unified ideographs Created by merging AR PL Mingti2L Big5 and AR PL SungtiL GB.
1.05 2010-07-03 50 blocks; 19,187 characters, including 16,361 CJK unified ideographs First public release.
1.06 2010-10-01 54 blocks; 19,688 characters, including 16,818 CJK unified ideographs
1.07 2011-03-14 56 blocks; 20,853 characters, including 17,731 CJK unified ideographs
1.08 2011-05-01 61 blocks; 21,873 characters, including 18,073 CJK unified ideographs
1.09 2012-01-23 67 blocks; 23,110 characters, including 18,776 CJK unified ideographs
1.10 2012-06-12 67 blocks; 25,620 characters, including 21,000 CJK unified ideographs
1.11 2013-02-10 68 blocks; 27,797 characters, including 22,533 CJK unified ideographs
1.12 2014-01-31 68 blocks; 29,045 characters, including 23,485 CJK unified ideographs
7.0.0 2014-08-28 70 blocks; 30,547 characters, including 24,840 CJK unified ideographs Complete coverage of the main CJK block.
New version numbering system based on the supported version of Unicode.
7.0.1 2015-02-01 70 blocks; 31,294 characters, including 25,543 CJK unified ideographs 703 additonal characters in CJK-A, CJK-B and CJK-C blocks.
7.0.2 2015-04-19 70 blocks; 32,615 characters, including 26,464 CJK unified ideographs 921 additonal characters in CJK-A, CJK-B and CJK-C blocks; complete coverage of CJK-C G-source characters.
8.0.0 2015-06-14 72 blocks; 34,121 characters, including 28,106 CJK unified ideographs 1,642 additional CJK unified ideographs (9 characters added to the end of the main CJK block; 115 CJK-A characters; 363 CJK-B characters; 30 CJK-C characters; and 1,125 CJK-E characters). 194 PUA characters removed.
8.0.1 2015-11-28 72 blocks; 36,797 characters, including 29,109 CJK unified ideographs 1,003 additional CJK unified ideographs (269 CJK-A characters; 428 CJK-B characters; 97 CJK-C characters; and 209 CJK-E characters). 1,671 PUA characters added from BabelStone Han PUA. Various glyph corrections.
8.0.2 2015-11-28 72 blocks; 36,803 characters, including 29,114 CJK unified ideographs More glyph corrections, and 5 additional CJK-B characters.
8.0.3 2015-12-29 72 blocks; 37,308 characters, including 29,347 CJK unified ideographs 233 additional CJK unified ideographs. 272 PUA characters added from BabelStone Han PUA version 1.020.
8.0.4 2016-03-05 77 blocks; 37,985 characters, including 29,537 CJK unified ideographs 190 additional CJK unified ideographs. 124 PUA characters added from BabelStone Han PUA version 1.024.
9.0.0 2016-06-23 79 blocks; 38,824 characters, including 30,198 CJK unified ideographs 661 additional CJK unified ideographs. 124 PUA characters added from BabelStone Han PUA version 1.036.
9.0.1 2016-10-23 80 blocks; 42,212 characters, including 31,289 CJK unified ideographs 1,041 additional CJK unified ideographs (147 CJK-A characters; 679 CJK-B characters; 9 CJK-C characters; and 256 CJK-E characters). 98 PUA characters added from BabelStone Han PUA version 1.046. Numerous glyph corrections and improvements.
9.0.2 2017-03-12 80 blocks; 43,967 characters, including 32,631 CJK unified ideographs 1,338 additional CJK unified ideographs (119 CJK-A characters; 907 CJK-B characters; 56 CJK-C characters; and 256 CJK-E characters). 417 PUA characters added from BabelStone Han PUA version 1.058. Various glyph corrections and improvements. Added support for vertical layout.


BabelStone Han is free to download and use for personal or commercial purposes.

BabelStone Fonts