Understanding Nepali Fonts: Unicode vs Preeti vs Legacy Formats
March 12, 2025 · TypeNepal Team
If you've ever opened an old Nepali document and seen gibberish instead of text, you've encountered the font compatibility problem. For decades, Nepali computing relied on proprietary fonts like Preeti, Kantipur, and PCS Nepali. Each used its own encoding, meaning a document created in Preeti would only display correctly when viewed with the Preeti font installed. Switch to another font, and the text became unreadable. This guide explains the evolution of Nepali fonts and why Unicode has become the universal solution.
The Era of Proprietary Fonts
In the 1990s and early 2000s, when Nepali computing was in its infancy, there were no standardized ways to represent Devanagari script digitally. Font designers in Nepal created custom fonts that mapped Nepali characters to unused slots in the ASCII or extended ASCII character set. Preeti, designed by Durga Prasad Pandey, became one of the most popular. It was widely used in government offices, newspapers, and educational institutions. Kantipur, named after the prominent Nepali newspaper, and PCS Nepali were other common choices.
The problem with these fonts was fundamental: the same byte value could represent different characters in different fonts. The letter "क" in Preeti might be stored as byte 0xA1, but in Kantipur, 0xA1 could be an entirely different character. There was no way to know what a document contained without knowing which font was used to create it. Sharing documents between organizations often required converting between formats, and the conversion process was error-prone.
Unicode: The Universal Standard
Unicode, developed by the Unicode Consortium, assigns a unique number (code point) to every character in every major writing system. For Devanagari, used by Nepali, Hindi, Sanskrit, and other languages, Unicode reserves a specific block of code points. The letter "क" is always U+0915, regardless of the font. The letter "न" is always U+0928. This means that when you save a document in Unicode, the content is independent of any particular font. Any Unicode-compatible font can display it correctly.
Unicode was first published in 1991, and support for Devanagari was included from early versions. However, adoption in Nepal was slow. Existing documents were in Preeti or other formats. Software support was limited. Users were familiar with their current systems. Over the past two decades, though, Unicode has become the default for virtually all modern software, operating systems, and web platforms. Today, using anything other than Unicode for new Nepali content is not recommended.
Converting Legacy Documents
Many organizations and individuals still have archives of documents in Preeti, Kantipur, or other legacy formats. Converting these to Unicode is essential for long-term preservation and accessibility. Conversion tools analyze the byte sequence in the legacy document and map each value to the corresponding Unicode character based on the source font's encoding table.
Conversion accuracy depends on the quality of the mapping. Some legacy fonts had inconsistent encodings or used the same byte for multiple characters in different contexts. In such cases, manual review may be necessary after conversion. For most Preeti documents, automated conversion achieves high accuracy, especially when the document was created with standard software.
TypeNepal and similar platforms offer Preeti-to-Unicode and Unicode-to-Preeti converters. These are useful when you need to work with legacy documents or when you must produce output for systems that still require Preeti (such as some government portals). The ideal workflow, however, is to convert legacy content to Unicode once and then work exclusively in Unicode going forward.
Choosing the Right Font
With Unicode, you can use any Devanagari-supporting font for display. Popular choices include Noto Sans Devanagari (Google's open-source font, excellent for screen and print), Noto Serif Devanagari (for a more traditional look), Lohit Devanagari, and Mangal (common on Windows). For creative or decorative purposes, many Nepali-specific fonts are available, often designed to support both Unicode and traditional aesthetics.
When selecting a font, consider readability, the context (web, print, mobile), and the audience. Sans-serif fonts like Noto Sans tend to be easier to read on screens. Serif fonts can lend a formal tone to printed documents. Ensure the font includes all the characters you need; some fonts may not support rare conjuncts or special characters.
Font Licensing and Commercial Use
If you're creating content for commercial distribution—websites, apps, printed materials—pay attention to font licensing. Many Unicode Devanagari fonts are released under open-source licenses (SIL Open Font License, Apache 2.0) that allow free use and redistribution. Others may require a commercial license for certain uses. Always check the font's license file or the designer's website before embedding fonts in a product or distributing documents that depend on them. TypeNepal's font library includes licensing information for each font to help you make informed decisions.
Web and Mobile
On the web, fonts can be loaded via @font-face or from services like Google Fonts. Noto Sans Devanagari is widely used and performs well. For mobile apps, system fonts on Android and iOS include Devanagari support, so Nepali text will display correctly even without custom font loading. The key is that your content is stored in Unicode; the font is just for rendering.
Conclusion
The shift from proprietary Nepali fonts to Unicode represents a major improvement in digital accessibility for the Nepali language. While legacy formats like Preeti remain in use in some contexts, new content should always be created in Unicode. Conversion tools make it possible to migrate old documents, and a wealth of Unicode fonts ensures that Nepali text can be displayed beautifully everywhere. Understanding this history and these options will help you make informed decisions about your Nepali typography needs.