Thursday, August 22, 2013

Unicode Fonts



About Unicode Encoding

Computers store data as numbers, even textual data. An encoding system, such as ASCII, assigns a number to each letter, number or character. Operating systems include programs and fonts which convert these numbers to letters visible on the screen and computer monitor.
Unicode, also known as UTF-8 or the "Universal Alphabet" is a an ordered set of over a million characters covering the majority of writing systems in the world. Unlike older systems, Unicode allows multiple writing systems to co-exist in one data file. Systems which recognize Unicode can consistently read and process data from many languages.
Developers may want to view the Encoding Tutorial to see how encodings are structured and how that affects multilingual computing.
Q: What is Unicode?
A: Unicode is the universal character encoding, maintained by the Unicode Consortium. This encoding standard provides the basis for processing, storage and interchange of text data in any language in all modern software and information technology protocols. See "What is Unicode?" for a short explanation of what Unicode is all about. That page is translated into more than 50 languages, to illustrate the use of the standard. See for yourself!

Q: What is the scope of Unicode?
A: Unicode covers all the characters for all the writing systems of the world, modern and ancient. It also includes technical symbols, punctuations, and many other characters used in writing text. The Unicode Standard is intended to support the needs of all types of users, whether in business or academia, using mainstream or minority scripts.

Q: How many languages are covered by Unicode?
A: It's hard to say, because Unicode encodes scripts for languages, rather than languages per se. Many scripts (especially the Latin script) are used to write a large number of languages. The easiest answer is that Unicode covers all of the languages that can be written in the following scripts: Latin, Greek, Cyrillic, Armenian, Hebrew, Arabic, Syriac, Thaana, Devanagari, Bengali, Gurmukhi, Oriya, Tamil, Telugu, Kannada, Malayalam, Sinhala, Thai, Lao, Tibetan, Myanmar, Georgian, Hangul, Ethiopic, Cherokee, Canadian Aboriginal Syllabics, Khmer, Mongolian, Han (Japanese, Chinese, Korean ideographs), Hiragana, Katakana, and Yi. Unicode also includes many historic scripts used to write long-dead languages, as well as lesser-used regional scripts that may be used as a second (or even third) way to write a particular language. See Supported Scripts for the full list. See also the list of Languages and Scripts.

Q: Does Unicode encode scripts or languages?
A: The Unicode Standard encodes characters on a per script basis. So, for example, there is only one set of Latin characters defined, despite the fact that the Latin script is used for the alphabets of thousands of different languages. The same principle applies for any other script (Cyrillic, Arabic, Ethiopic, Devanagari, ...), which is used for writing many different languages. However, the Unicode Standard does not encode scripts per se. For a listing of script names, see UTR #24, Unicode Script Property. For the ISO standard for script codes, see ISO/IEC 15924, Code for the Representation of Names of Scripts. For the ISO standard for language codes, see ISO 639, Code for the Representation of Names of Languages.


Q: I think my company might want to get involved in Unicode. Is there any material that I can use to present the case to my management?
A: Yes, there is a white paper outlining the overall value proposition of a Unicode membership to an organization. See Why Join and How to Join.

Q: Where can I purchase the Unicode software or the Unicode font?
A: The Unicode Standard is not a software program, nor is it a font. It is a character encoding system, like ASCII, designed to help developers who want to create software applications that work in any language in the world.
If all you need is to create a multilingual text or write a document or send e-mail in another language, then a Unicode-compliant text editor, mail program, or word processing package will do the job. Please see the following pages on our web site for further information about the standard and where to look for help:
·         Basic information about "What is Unicode?"
·         Information about fonts, keyboards, and products known to support Unicode:
http://www.unicode.org/resources/
·         Introductory page to the standard:
http://www.unicode.org/standard/standard.html


Fonts and Unicode
Q: Is Unicode a font?
A: No. Unicode is not a font. See Basic Questions. However, fonts are built to use the Unicode Standard.
Q: Can I use Unicode characters without asking for permission from the Unicode Consortium?
A: You don't need any special licensing or permission to use Unicode characters. This includes using them in products, in data, or in an any other context.
Q: The Unicode Standard is copyrighted. Does this mean that you have the copyright on my script?
A: No. The text of the Unicode Standard is copyrighted, but not the characters or writing systems.
Q: Can I get the glyphs for your characters and use them? For example, using fonts from your charts?
A: No. You cannot extract the glyphs from the PDF code charts and use them in products. The fonts used in the PDF code charts on our website are licensed by their owners for chart usage only, and they may not be re-used without permission of the font suppliers. Please see http://www.unicode.org/charts/fonts.html for a list of suppliers.
Q: Then how can I get glyphs for the character I need?
A: You can design your own fonts, you can purchase the license for a font designed by someone else, or you can search the web for the many fonts which have been placed in the public domain or which have free licenses. For help with font resources, please see Fonts. Or you can contact the font vendors who contributed to the production of our code charts, listed on our font supplier page: Font Contributors Acknowledgements.
Q: I'm a software developer. Is there anything else I need to know about terms of use before using Unicode characters?
A: Before using any part of the standard, you should read all of our documentation and the Unicode Terms of Use. If you are interested in using the code charts, please see Character Code Charts Help and Links and the terms of use found on the first page of each of the code chart files.
Q: What is a Unicode-conformant font?
A: A font is never used in isolation: it is one of the components used in text rendering systems. Therefore, it is not strictly meaningful to ask if a font is Unicode-conformant; this question is more pertinent for the rendering system as a whole.
Nevertheless, most rendering systems involve some kind of mapping from characters to glyphs, stored in fonts. In sfnt-based fonts, such as TrueType, OpenType and Graphite fonts, default glyph mappings are stored in the 'cmap' table; additional tables may substitute alternate glyphs based on context. A Unicode-conformant font can be defined as a font which contains a mapping from Unicode characters and that maps characters to glyphs in a way that is consistent with character semantics defined in the Unicode Standard.
For example, a font that includes a character-to-glyph mapping based only on the JIS (Japanese Industrial Standard) character encoding would not be Unicode compliant. (Note, however, that such a font potentially may be used within a text rendering system that can handle conversions between legacy encodings and Unicode to display text in a Unicode-conformant way.) For another example, a TrueType font that includes a Windows Unicode 'cmap' table but that maps characters in the Latin-1 block to glyphs for Cyrillic characters is not a Unicode-conformant font.
Note that the Unicode Consortium does not review or evaluate fonts for their compliance to the Unicode Standard.
The best place to find information about Unicode-compliant fonts is  our Unicode Resources page. You might also want to check the Display Problems? page for guidance on installing fonts and using them with a browser. [EM] & [DA]
Q: What factors influence how I can display characters in Java applications?
A: Displaying Unicode correctly in Java is dependent on 3 factors:
1. physical fonts
2. composite fonts in the font.properties file
3. Swing and AWT components.
Fonts store glyphs. You must have an appropriate font containing the glyphs for the character that you want to display. You can use a physical font name or a virtual “composite” font name in your text components.
Composite fonts map a logical font name to physical fonts on your system. when you set the font on a text component, you can use either a physical font name or a composite font name. If you use a composite font name, you must make sure that the composite font is correctly configured in your font.properties file. This file maps a composite or logical font name to one or more physical fonts. At least one of the physical fonts in the mapping must contain the appropriate glyphs for the characters you want to display.
AWT components first convert the Unicode characters to the host's native character set encoding. if the target character set does not have the needed Unicode character, a substitute character is often used to represent the original character. AWT components are not typically flexible enough to display wide ranges of multilingual text because of their dependence on a single, rather limited charset or codepage.
On the other hand, Swing components do not suffer from the same limitations as AWT components. because Swing components do not convert a Unicode character to the host's native charset or codepage, these components can typically display a wide range of multilingual text. [JO]
Q: How can I make an OpenType font?
A: The following are some pointers for creating OpenType fonts:
  1. http://www.microsoft.com/typography/tt/tt.htm
    This has links to the OpenType specification, as well as the specification to create Arabic and Indic script fonts.
  2. http://www.microsoft.com/typography/developers/volt/default.htm
    This has resources for using the Visual OpenType Layout Tool (VOLT), which can be used to add layout tables to fonts. You might want to join the VOLT users community listed there. Many members of this community are developing OpenType fonts.
  3. http://www.microsoft.com/typography/tools/vtt.htm
    Visual TrueType (VTT), a tool to add hints to fonts containing TrueType outlines is available at this url. This url has a link to additional VTT resources.
  4. http://www.microsoft.com/typography/otspec/otlist.htm
    This contains information about the OpenType discussion forum.
  5. http://partners.adobe.com/asn/tech/type/otfdk/index.jsp
    The Adobe Font Development Kit for OpenType contains a set of tools used by Adobe font developers for wrapping up PostScript® fonts as OpenType/CFF font files, and adding OpenType layout features.
    [AJ] & [EM]
Q: How can I make a AAT fonts?
A: http://developer.apple.com/fonts/AddingAAT/AddingAAT.html is a basic tutorial on adding AAT (Apple Advanced Typography) support to a font. Tools to do this are available at http://developer.apple.com/fonts/Tools/index.html. [JJ]
Q: How can I make a Graphite font?
A: Graphite fonts are TrueType fonts with supplemental Graphite tables added. A Graphite font is created by writing a description of the script behavior (the character-to-glyph transformations) using the Graphite Description Language (GDL), and compiling that into the TrueType font.
The following are helpful links:
  1. http://scripts.sil.org/cms/scripts/page.php?site_id=projects&item_id=graphite_home
    This contains general information related to Graphite with links documentation, mail lists, open source code.
  2. http://scripts.sil.org/cms/scripts/page.php?site_id=projects&item_id=graphite_devFont
    This provides a detailed discussion of the Graphite Description Language.
  3. http://scripts.sil.org/GraphiteCompilerDownload
    This provides a link to a downloadable software package (Windows) containing the GDL compiler for creating Graphite-enabled fonts.
  4.  http://scripts.sil.org/cms/scripts/page.php?site_id=projects&item_id=graphite_apps
    This provides links to a list of applications that support Graphite rendering in Graphite-enabled fonts.
    [PC]

1 comment:

  1. Dafont.com is a site where you can download a ton of free fonts. You can search for a specific typeface, or search by the type of lettering you want, whether it’s serif or sans serif, hand lettered or grunge style. You can also put in your own phrase to see how it looks in a particular font. A lot of these fonts are very decorative and many are handdrawn, so it’s not always the best place to search for body text fonts. Each selection also tells you whether your download is free for personal or commercial use. The download is easy – you get a zip file with the font file inside. Unzip, install, and you’re ready to go.

    ReplyDelete