Fallback fonts in Word to PDF Conversion
18 Dec 202524 minutes to read
During Word to PDF conversions, if a glyph of the input text is unavailable in the specified font, the text will not be rendered properly. To address this, the Syncfusion® Word (DocIO) library allows users to specify fallback fonts. When a glyph is missing, the library will use one of the fallback fonts to render the text correctly in the output PDF document.
Users can configure fallback fonts in the following ways:
- Initialize default fallback fonts.
- Set custom fonts as fallback fonts for specific script types, including Arabic, Hebrew, Chinese, Japanese, and more.
- Set custom fonts as fallback fonts for a particular range of Unicode text.
NOTE
DocIO internally uses user-initialized or specified fallback fonts for Unicode characters during Word to PDF conversion. Therefore, the specified fallback fonts must be installed in the production environment or embedded in the input Word document (DOCX). Otherwise, it will not render the text properly using the fallback fonts.
Initialize default fallback fonts
The following code example demonstrates how to initialize a default fallback fonts while converting a Word document to PDF. The InitializeDefault API sets the default fallback fonts for specific script types like Arabic, Hebrew, Chinese, Japanese etc.
//Opens the file as stream.
using (FileStream inputStream = new FileStream("Template.docx", FileMode.Open, FileAccess.Read))
{
//Loads an existing Word document file stream.
using (WordDocument wordDocument = new WordDocument(inputStream, Syncfusion.DocIO.FormatType.Docx))
{
//Initialize the default fallback fonts collection.
wordDocument.FontSettings.FallbackFonts.InitializeDefault();
//Instantiation of DocIORenderer for Word to PDF conversion.
using (DocIORenderer render = new DocIORenderer())
{
//Converts Word document into PDF document.
using (PdfDocument pdfDocument = render.ConvertToPDF(wordDocument))
{
//Saves the PDF file to file system.
using (FileStream outputStream = new FileStream("WordToPDF.pdf", FileMode.OpenOrCreate, FileAccess.ReadWrite))
{
pdfDocument.Save(outputStream);
}
}
}
}
}//Loads an existing Word document.
using (WordDocument wordDocument = new WordDocument("Template.docx", Syncfusion.DocIO.FormatType.Docx))
{
//Initialize the default fallback fonts collection.
wordDocument.FontSettings.FallbackFonts.InitializeDefault();
//Instantiation of DocToPDFConverter for Word to PDF conversion.
using (DocToPDFConverter converter = new DocToPDFConverter())
{
//Converts Word document into PDF document.
using (PdfDocument pdfDocument = converter.ConvertToPDF(wordDocument))
{
//Saves the PDF file to file system.
pdfDocument.Save("WordToPDF.pdf");
}
}
}'Loads an existing Word document.
Using wordDocument As WordDocument = New WordDocument("Template.docx", FormatType.Docx)
'Initialize the default fallback fonts collection.
wordDocument.FontSettings.FallbackFonts.InitializeDefault()
'Instantiation of DocToPDFConverter for Word to PDF conversion.
Using converter As New DocToPDFConverter()
'Converts Word document into PDF document.
Using pdfDocument As PdfDocument = converter.ConvertToPDF(wordDocument)
'Saves the PDF file to file system.
pdfDocument.Save("WordToPDF.pdf")
End Using
End Using
End UsingYou can download a complete working sample from GitHub.
Fallback fonts based on script type
The following code example demonstrates how a user can add fallback fonts based on the script types, which DocIO considers internally when converting a Word document to PDF.
//Opens the file as stream.
using (FileStream inputStream = new FileStream("Template.docx", FileMode.Open, FileAccess.Read))
{
//Loads an existing Word document file stream.
using (WordDocument wordDocument = new WordDocument(inputStream, Syncfusion.DocIO.FormatType.Docx))
{
//Adds fallback font for "Arabic" script type.
wordDocument.FontSettings.FallbackFonts.Add(ScriptType.Arabic, "Arial, Times New Roman");
//Adds fallback font for "Hebrew" script type.
wordDocument.FontSettings.FallbackFonts.Add(ScriptType.Hebrew, "Arial, Courier New");
//Adds fallback font for "Hindi" script type.
wordDocument.FontSettings.FallbackFonts.Add(ScriptType.Hindi, "Mangal, Nirmala UI");
//Adds fallback font for "Chinese" script type.
wordDocument.FontSettings.FallbackFonts.Add(ScriptType.Chinese, "DengXian, MingLiU");
//Adds fallback font for "Japanese" script type.
wordDocument.FontSettings.FallbackFonts.Add(ScriptType.Japanese, "Yu Mincho, MS Mincho");
//Adds fallback font for "Thai" script type.
wordDocument.FontSettings.FallbackFonts.Add(ScriptType.Thai, "Tahoma, Microsoft Sans Serif");
//Adds fallback font for "Korean" script type.
wordDocument.FontSettings.FallbackFonts.Add(ScriptType.Korean, "Malgun Gothic, Batang");
//Instantiation of DocIORenderer for Word to PDF conversion.
using (DocIORenderer render = new DocIORenderer())
{
//Converts Word document into PDF document.
using (PdfDocument pdfDocument = render.ConvertToPDF(wordDocument))
{
//Saves the PDF file to file system.
using (FileStream outputStream = new FileStream("WordToPDF.pdf", FileMode.OpenOrCreate, FileAccess.ReadWrite))
{
pdfDocument.Save(outputStream);
}
}
}
}
}//Loads an existing Word document.
using (WordDocument wordDocument = new WordDocument("Template.docx", Syncfusion.DocIO.FormatType.Docx))
{
//Adds fallback font for "Arabic" script type.
wordDocument.FontSettings.FallbackFonts.Add(ScriptType.Arabic, "Arial, Times New Roman");
//Adds fallback font for "Hebrew" script type.
wordDocument.FontSettings.FallbackFonts.Add(ScriptType.Hebrew, "Arial, Courier New");
//Adds fallback font for "Hindi" script type.
wordDocument.FontSettings.FallbackFonts.Add(ScriptType.Hindi, "Mangal, Nirmala UI");
//Adds fallback font for "Chinese" script type.
wordDocument.FontSettings.FallbackFonts.Add(ScriptType.Chinese, "DengXian, MingLiU");
//Adds fallback font for "Japanese" script type.
wordDocument.FontSettings.FallbackFonts.Add(ScriptType.Japanese, "Yu Mincho, MS Mincho");
//Adds fallback font for "Thai" script type.
wordDocument.FontSettings.FallbackFonts.Add(ScriptType.Thai, "Tahoma, Microsoft Sans Serif");
//Adds fallback font for "Korean" script type.
wordDocument.FontSettings.FallbackFonts.Add(ScriptType.Korean, "Malgun Gothic, Batang");
//Instantiation of DocToPDFConverter for Word to PDF conversion.
using (DocToPDFConverter converter = new DocToPDFConverter())
{
//Converts Word document into PDF document.
using (PdfDocument pdfDocument = converter.ConvertToPDF(wordDocument))
{
//Saves the PDF file to file system.
pdfDocument.Save("WordToPDF.pdf");
}
}
}'Loads an existing Word document.
Using wordDocument As WordDocument = New WordDocument("Template.docx", FormatType.Docx)
'Adds fallback font for "Arabic" script type.
wordDocument.FontSettings.FallbackFonts.Add(ScriptType.Arabic, "Arial, Times New Roman")
'Adds fallback font for "Hebrew" script type.
wordDocument.FontSettings.FallbackFonts.Add(ScriptType.Hebrew, "Arial, Courier New")
'Adds fallback font for "Hindi" script type.
wordDocument.FontSettings.FallbackFonts.Add(ScriptType.Hindi, "Mangal, Nirmala UI")
'Adds fallback font for "Chinese" script type.
wordDocument.FontSettings.FallbackFonts.Add(ScriptType.Chinese, "DengXian, MingLiU")
'Adds fallback font for "Japanese" script type.
wordDocument.FontSettings.FallbackFonts.Add(ScriptType.Japanese, "Yu Mincho, MS Mincho")
'Adds fallback font for "Thai" script type.
wordDocument.FontSettings.FallbackFonts.Add(ScriptType.Thai, "Tahoma, Microsoft Sans Serif")
'Adds fallback font for "Korean" script type.
wordDocument.FontSettings.FallbackFonts.Add(ScriptType.Korean, "Malgun Gothic, Batang")
'Instantiation of DocToPDFConverter for Word to PDF conversion.
Using converter As New DocToPDFConverter()
'Converts Word document into PDF document.
Using pdfDocument As PdfDocument = converter.ConvertToPDF(wordDocument)
'Saves the PDF file to file system.
pdfDocument.Save("WordToPDF.pdf")
End Using
End Using
End UsingYou can download a complete working sample from GitHub.
Fallback fonts for symbols
The following code example demonstrates how a user can add fallback fonts for Symbols and Emojis, which DocIO considers internally when converting a Word document to PDF.
//Opens the file as stream.
using (FileStream inputStream = new FileStream("Template.docx", FileMode.Open, FileAccess.Read))
{
//Loads an existing Word document file stream.
using (WordDocument wordDocument = new WordDocument(inputStream, Syncfusion.DocIO.FormatType.Docx))
{
//Adds fallback font for basic symbols like bullet characters.
wordDocument.FontSettings.FallbackFonts.Add(ScriptType.Symbols, "Segoe UI Symbol, Arial Unicode MS, Wingdings");
//Adds fallback font for mathematics symbols.
wordDocument.FontSettings.FallbackFonts.Add(ScriptType.Mathematics, "Cambria Math, Noto Sans Math, Segoe UI Symbol, Arial Unicode MS");
//Adds fallback font for emojis.
wordDocument.FontSettings.FallbackFonts.Add(ScriptType.Emoji, "Segoe UI Emoji, Noto Color Emoji, Arial Unicode MS");
//Instantiation of DocIORenderer for Word to PDF conversion.
using (DocIORenderer render = new DocIORenderer())
{
//Converts Word document into PDF document.
using (PdfDocument pdfDocument = render.ConvertToPDF(wordDocument))
{
//Saves the PDF file to file system.
using (FileStream outputStream = new FileStream("WordToPDF.pdf", FileMode.OpenOrCreate, FileAccess.ReadWrite))
{
pdfDocument.Save(outputStream);
}
}
}
}
}//Loads an existing Word document.
using (WordDocument wordDocument = new WordDocument("Template.docx", Syncfusion.DocIO.FormatType.Docx))
{
//Adds fallback font for basic symbols like bullet characters.
wordDocument.FontSettings.FallbackFonts.Add(ScriptType.Symbols, "Segoe UI Symbol, Arial Unicode MS, Wingdings");
//Adds fallback font for mathematics symbols.
wordDocument.FontSettings.FallbackFonts.Add(ScriptType.Mathematics, "Cambria Math, Noto Sans Math, Segoe UI Symbol, Arial Unicode MS");
//Adds fallback font for emojis.
wordDocument.FontSettings.FallbackFonts.Add(ScriptType.Emoji, "Segoe UI Emoji, Noto Color Emoji, Arial Unicode MS");
//Instantiation of DocToPDFConverter for Word to PDF conversion.
using (DocToPDFConverter converter = new DocToPDFConverter())
{
//Converts Word document into PDF document.
using (PdfDocument pdfDocument = converter.ConvertToPDF(wordDocument))
{
//Saves the PDF file to file system.
pdfDocument.Save("WordToPDF.pdf");
}
}
}'Loads an existing Word document.
Using wordDocument As WordDocument = New WordDocument("Template.docx", FormatType.Docx)
'Adds fallback font for basic symbols Like bullet characters.
wordDocument.FontSettings.FallbackFonts.Add(ScriptType.Symbols, "Segoe UI Symbol, Arial Unicode MS, Wingdings")
'Adds fallback font for mathematics symbols.
wordDocument.FontSettings.FallbackFonts.Add(ScriptType.Mathematics, "Cambria Math, Noto Sans Math, Segoe UI Symbol, Arial Unicode MS")
'Adds fallback font for emojis.
wordDocument.FontSettings.FallbackFonts.Add(ScriptType.Emoji, "Segoe UI Emoji, Noto Color Emoji, Arial Unicode MS")
'Instantiation of DocToPDFConverter for Word to PDF conversion.
Using converter As New DocToPDFConverter()
'Converts Word document into PDF document.
Using pdfDocument As PdfDocument = converter.ConvertToPDF(wordDocument)
'Saves the PDF file to file system.
pdfDocument.Save("WordToPDF.pdf")
End Using
End Using
End UsingYou can download a complete working sample from GitHub
Fallback fonts for range of Unicode text
Users can set fallback fonts for specific Unicode range of text to be used in Word to PDF conversion.
The following code example demonstrates how users can add fallback fonts by using a specific Unicode range of text that DocIO considers internally while converting a Word document to PDF.
//Opens the file as stream.
using (FileStream inputStream = new FileStream("Template.docx", FileMode.Open, FileAccess.Read))
{
//Loads an existing Word document file stream.
using (WordDocument wordDocument = new WordDocument(inputStream, Syncfusion.DocIO.FormatType.Docx))
{
//Adds fallback font for "Arabic" specific unicode range.
wordDocument.FontSettings.FallbackFonts.Add(new FallbackFont(0x0600, 0x06ff, "Arial"));
//Adds fallback font for "Hebrew" specific unicode range.
wordDocument.FontSettings.FallbackFonts.Add(new FallbackFont(0x0590, 0x05ff, "Times New Roman"));
//Adds fallback font for "Hindi" specific unicode range.
wordDocument.FontSettings.FallbackFonts.Add(new FallbackFont(0x0900, 0x097F, "Nirmala UI"));
//Adds fallback font for "Chinese" specific unicode range.
wordDocument.FontSettings.FallbackFonts.Add(new FallbackFont(0x4E00, 0x9FFF, "DengXian"));
//Adds fallback font for "Japanese" specific unicode range.
wordDocument.FontSettings.FallbackFonts.Add(new FallbackFont(0x3040, 0x309F, "MS Gothic"));
//Adds fallback font for "Thai" specific unicode range.
wordDocument.FontSettings.FallbackFonts.Add(new FallbackFont(0x0E00, 0x0E7F, "Tahoma"));
//Adds fallback font for "Korean" specific unicode range.
wordDocument.FontSettings.FallbackFonts.Add(new FallbackFont(0xAC00, 0xD7A3, "Malgun Gothic"));
//Instantiation of DocIORenderer for Word to PDF conversion.
using (DocIORenderer render = new DocIORenderer())
{
//Converts Word document into PDF document.
using (PdfDocument pdfDocument = render.ConvertToPDF(wordDocument))
{
//Saves the PDF file to file system.
using (FileStream outputStream = new FileStream("WordToPDF.pdf", FileMode.OpenOrCreate, FileAccess.ReadWrite))
{
pdfDocument.Save(outputStream);
}
}
}
}
}//Loads an existing Word document.
using (WordDocument wordDocument = new WordDocument("Template.docx", Syncfusion.DocIO.FormatType.Docx))
{
//Adds fallback font for "Arabic" specific unicode range.
wordDocument.FontSettings.FallbackFonts.Add(new FallbackFont(0x0600, 0x06ff, "Arial"));
//Adds fallback font for "Hebrew" specific unicode range.
wordDocument.FontSettings.FallbackFonts.Add(new FallbackFont(0x0590, 0x05ff, "Times New Roman"));
//Adds fallback font for "Hindi" specific unicode range.
wordDocument.FontSettings.FallbackFonts.Add(new FallbackFont(0x0900, 0x097F, "Nirmala UI"));
//Adds fallback font for "Chinese" specific unicode range.
wordDocument.FontSettings.FallbackFonts.Add(new FallbackFont(0x4E00, 0x9FFF, "DengXian"));
//Adds fallback font for "Japanese" specific unicode range.
wordDocument.FontSettings.FallbackFonts.Add(new FallbackFont(0x3040, 0x309F, "MS Gothic"));
//Adds fallback font for "Thai" specific unicode range.
wordDocument.FontSettings.FallbackFonts.Add(new FallbackFont(0x0E00, 0x0E7F, "Tahoma"));
//Adds fallback font for "Korean" specific unicode range.
wordDocument.FontSettings.FallbackFonts.Add(new FallbackFont(0xAC00, 0xD7A3, "Malgun Gothic"));
//Instantiation of DocToPDFConverter for Word to PDF conversion.
using (DocToPDFConverter converter = new DocToPDFConverter())
{
//Converts Word document into PDF document.
using (PdfDocument pdfDocument = converter.ConvertToPDF(wordDocument))
{
//Saves the PDF file to file system.
pdfDocument.Save("WordToPDF.pdf");
}
}
}'Loads an existing Word document.
Using wordDocument As WordDocument = New WordDocument("Template.docx", FormatType.Docx)
'Adds fallback font for "Arabic" specific unicode range.
wordDocument.FontSettings.FallbackFonts.Add(New FallbackFont(0x0600, 0x06ff, "Arial"))
'Adds fallback font for "Hebrew" specific unicode range.
wordDocument.FontSettings.FallbackFonts.Add(New FallbackFont(0x0590, 0x05ff, "Times New Roman"))
'Adds fallback font for "Hindi" specific unicode range.
wordDocument.FontSettings.FallbackFonts.Add(New FallbackFont(0x0900, 0x097F, "Nirmala UI"))
'Adds fallback font for "Chinese" specific unicode range.
wordDocument.FontSettings.FallbackFonts.Add(New FallbackFont(0x4E00, 0x9FFF, "DengXian"))
'Adds fallback font for "Japanese" specific unicode range.
wordDocument.FontSettings.FallbackFonts.Add(New FallbackFont(0x3040, 0x309F, "MS Gothic"))
'Adds fallback font for "Thai" specific unicode range.
wordDocument.FontSettings.FallbackFonts.Add(New FallbackFont(0x0E00, 0x0E7F, "Tahoma"))
'Adds fallback font for "Korean" specific unicode range.
wordDocument.FontSettings.FallbackFonts.Add(New FallbackFont(0xAC00, 0xD7A3, "Malgun Gothic"))
'Instantiation of DocToPDFConverter for Word to PDF conversion.
Using converter As New DocToPDFConverter()
'Converts Word document into PDF document.
Using pdfDocument As PdfDocument = converter.ConvertToPDF(wordDocument)
'Saves the PDF file to file system.
pdfDocument.Save("WordToPDF.pdf")
End Using
End Using
End UsingYou can download a complete working sample from GitHub.
Modify the exiting fallback fonts
The following code example demonstrates how user can modify or customize the existing fallback fonts using FontNames API while converting a Word document to PDF.
//Opens the file as stream.
using (FileStream inputStream = new FileStream("Template.docx", FileMode.Open, FileAccess.Read))
{
//Loads an existing Word document file stream.
using (WordDocument wordDocument = new WordDocument(inputStream, Syncfusion.DocIO.FormatType.Docx))
{
//Initialize the default fallback fonts collection.
wordDocument.FontSettings.FallbackFonts.InitializeDefault();
FallbackFonts fallbackFonts = wordDocument.FontSettings.FallbackFonts;
foreach (FallbackFont fallbackFont in fallbackFonts)
{
//Customize a default fallback font name as "David" for the Hebrew script.
if (fallbackFont.ScriptType == ScriptType.Hebrew)
fallbackFont.FontNames = "David";
//Customize a default fallback font name as "Microsoft Sans Serif" for the Thai script.
else if (fallbackFont.ScriptType == ScriptType.Thai)
fallbackFont.FontNames = "Microsoft Sans Serif";
}
//Instantiation of DocIORenderer for Word to PDF conversion.
using (DocIORenderer render = new DocIORenderer())
{
//Converts Word document into PDF document.
using (PdfDocument pdfDocument = render.ConvertToPDF(wordDocument))
{
//Saves the PDF file to file system.
using (FileStream outputStream = new FileStream("WordToPDF.pdf", FileMode.OpenOrCreate, FileAccess.ReadWrite))
{
pdfDocument.Save(outputStream);
}
}
}
}
}//Loads an existing Word document.
using (WordDocument wordDocument = new WordDocument("Template.docx", Syncfusion.DocIO.FormatType.Docx))
{
//Initialize the default fallback fonts collection.
wordDocument.FontSettings.FallbackFonts.InitializeDefault();
FallbackFonts fallbackFonts = wordDocument.FontSettings.FallbackFonts;
foreach (FallbackFont fallbackFont in fallbackFonts)
{
//Customize a default fallback font name as "David" for the Hebrew script.
if (fallbackFont.ScriptType == ScriptType.Hebrew)
fallbackFont.FontNames = "David";
//Customize a default fallback font name as "Microsoft Sans Serif" for the Thai script.
else if (fallbackFont.ScriptType == ScriptType.Thai)
fallbackFont.FontNames = "Microsoft Sans Serif";
}
//Instantiation of DocToPDFConverter for Word to PDF conversion.
using (DocToPDFConverter converter = new DocToPDFConverter())
{
//Converts Word document into PDF document.
using (PdfDocument pdfDocument = converter.ConvertToPDF(wordDocument))
{
//Saves the PDF file to file system.
pdfDocument.Save("WordToPDF.pdf");
}
}
}'Loads an existing Word document.
Using wordDocument As WordDocument = New WordDocument("Template.docx", FormatType.Docx)
'Initialize the default fallback fonts collection.
wordDocument.FontSettings.FallbackFonts.InitializeDefault()
Dim fallbackFonts As FallbackFonts = wordDocument.FontSettings.FallbackFonts
For Each fallbackFont As FallbackFont In fallbackFonts
'Customize a default fallback font name as "David" for the Hebrew script.
If fallbackFont.ScriptType = ScriptType.Hebrew Then
fallbackFont.FontNames = "David"
'Customize a default fallback font name as "Microsoft Sans Serif" for the Thai script.
ElseIf fallbackFont.ScriptType = ScriptType.Thai Then
fallbackFont.FontNames = "Microsoft Sans Serif"
End If
Next
'Instantiation of DocToPDFConverter for Word to PDF conversion.
Using converter As New DocToPDFConverter()
'Converts Word document into PDF document.
Using pdfDocument As PdfDocument = converter.ConvertToPDF(wordDocument)
'Saves the PDF file to file system.
pdfDocument.Save("WordToPDF.pdf")
End Using
End Using
End UsingYou can download a complete working sample from GitHub.
Supported script types
The following table illustrates the supported script types by the .NET Word library (DocIO) in Word to PDF conversion.
| Script types | Ranges | Default fallback fonts considered in InitializeDefault() API |
|---|---|---|
| Arabic |
0x0600 - 0x06ff 0x0750 - 0x077f 0x08a0 - 0x08ff 0xfb50 - 0xfdff 0xfe70 - 0xfeff |
Arial, Times New Roman, Microsoft Uighur |
| Hebrew |
0x0590 - 0x05ff 0xfb1d - 0xfb4f |
Arial, Times New Roman, David |
| Hindi |
0x0900 - 0x097F 0xa8e0 - 0xa8ff 0x1cd0 - 0x1cff |
Mangal, Utsaah |
| Chinese |
0x4E00 - 0x9FFF 0x3400 - 0x4DBF 0xd840 - 0xd869 0xdc00 - 0xdedf 0xA960 - 0xA97F 0xFF00 - 0xFFEF 0x3000 - 0x303F |
DengXian, MingLiU, MS Gothic |
| Japanese |
0x30A0 - 0x30FF 0x3040 - 0x309F |
Yu Mincho, MS Mincho |
| Thai | 0x0E00 - 0x0E7F | Tahoma, Microsoft Sans Serif |
| Korean |
0xAC00 - 0xD7A3 0x1100 - 0x11FF 0x3130 - 0x318F 0xA960 - 0xA97F 0xD7B0 - 0xD7FF 0xAC00 - 0xD7AF |
Malgun Gothic, Batang |
| Tamil | 0x0B80 - 0x0BFF | Latha, Nirmala UI, Arial Unicode MS |
| Bengali | 0x0980 - 0x09FF | Vrinda, Arial Unicode MS, Nikosh, Siyam Rupali, Nirmala UI |
| Gujarati | 0x0A80 - 0x0AFF | Shruti, Nirmala UI, Arial Unicode MS |
| Telugu | 0x0C00 - 0x0C7F | Gautami, Nirmala UI, Arial Unicode MS |
| Malayalam | 0x0D00 - 0x0D7F | Kartika, Nirmala UI, Arial Unicode MS |
| Kannada | 0x0C80 - 0x0CFF | Tunga, Nirmala UI, Arial Unicode MS |
| Ethiopic | 0x1200 - 0x137F 0x1380 - 0x139F |
Nyala, Ebrima |
| Khmer | 0x1780 - 0x17FF 0x19E0 - 0x19FF |
MoolBoran, DaunPenh, Leelawadee, Leelawadee UI |
| Gurmukhi | 0x0A00 - 0x0A7F | Raavi, Nirmala UI, Arial Unicode MS |
| Canadian | 0x1400 - 0x167F | Euphemia, Gadugi |
| Cherokee | 0x13A0 - 0x13FF 0xAB70 - 0xABBF |
Plantagenet Cherokee, Gadugi, Arial Unicode MS |
| Yi | 0xA000 - 0xA48F 0xA490 - 0xA4CF |
Microsoft Yi Baiti, Arial Unicode MS |
| Tibetan | 0x0F00 - 0x0FFF | Microsoft Himalaya, Nirmala UI, Arial Unicode MS |
| Thaana | 0x0780 - 0x07BF | MV Boli, Nirmala UI, Arial Unicode MS |
| Syriac | 0x0700 - 0x074F | Estrangelo Edessa, Segoe UI Historic, Arial Unicode MS |
| Odia | 0x0B00 - 0x0B7F | Kalinga, Nirmala UI, Arial Unicode MS |
| Lao | 0x0E80 - 0x0EFF | DokChampa, Lao UI, Leelawadee UI, Arial Unicode MS |
| Sinhala | 0x0D80 - 0x0DFF | Iskoola Pota, Nirmala UI, Arial Unicode MS |
| Mongolian | 0x1800 - 0x18AF | Mongolian Baiti, Microsoft YaHei, Arial Unicode MS |
| Vietnamese | 0x00C0 - 0x00FF 0x0102 - 0x0103 0x0110 - 0x0111 0x0128 - 0x0129 0x0168 - 0x0169 0x01A0 - 0x01A1 0x01AF - 0x01B0 0x0300 - 0x036F |
Times New Roman, Arial, Tahoma, Arial Unicode MS |
| Georgian | 0x10A0 - 0x10FF 0x2D00 - 0x2D2F |
Sylfaen, Arial Unicode MS |
| Armenian | 0x0530 - 0x058F 0xFB13 - 0xFB17 |
Arial, Sylfaen, Arial Unicode MS |
| Buginese | 0x1A00 - 0x1A1F | Leelawadee UI, Segoe UI Symbol |
| Bopomofo | 0x3100 - 0x312F 0x31A0 - 0x31BF |
Microsoft JhengHei, PMingLiU, SimSun, Arial Unicode MS |
| Javanese | 0xA980 - 0xA9DF | Javanese Text, Segoe UI Symbol |
| Lisu | 0xA4D0 - 0xA4FF | Segoe UI Symbol, Arial Unicode MS |
| Burmese | 0x1000 - 0x109F 0xAA60 - 0xAA7F |
Myanmar Text, Noto Sans Myanmar, Padauk |
| NKo | 0x07C0 - 0x07FF | Ebrima, Arial Unicode MS |
| OlChiki | 0x1C50 - 0x1C7F | Nirmala UI, Arial Unicode MS |
| Osmanya | 0x10480 - 0x104AF | Ebrima, Noto Sans Osmanya |
| PhagsPa | 0xA840 - 0xA87F | Phagspa, Microsoft PhagsPa, Noto Sans PhagsPa, Arial Unicode MS |
| SoraSompeng | 0x110D0 - 0x110FF | Nirmala UI, Arial Unicode MS |
| TaiLe | 0x1950 - 0x197F | Microsoft Tai Le, Arial Unicode MS |
| NewTaiLue | 0x1980 - 0x19DF | Microsoft New Tai Lue, Arial Unicode MS |
| Tifinagh | 0x2D30 - 0x2D7F | Ebrima, Arial Unicode MS |
| Symbols | 0x2000 - 0x27BF 0x2300 - 0x23FF 0xF000 - 0xF104 |
Segoe UI Symbol, Arial Unicode MS, Wingdings |
| Mathematics | 0x2200 - 0x2AFF 0x1D400 - 0x1D7FF |
Cambria Math, Noto Sans Math, Segoe UI Symbol, Arial Unicode MS |
| Emoji | 0x1F300 - 0x1FAFF 0xFE0F - 0xFE0F |
Segoe UI Emoji, Noto Color Emoji, Arial Unicode MS |