NRSI: Computers & Writing Systems
The Graphite web site has been moved. Please click here for the new site.
Graphite is a project under development within SIL’s Non-Roman Script Initiative and Language Software Development groups to provide rendering capabilities for complex non-Roman writing systems. (Work began in 1997 under the code name WinRend.) The original goal was a system for the Windows platform; the system has also been ported to Linux. Graphite can be used to create “smart fonts” capable of displaying writing systems with various complex behaviors. With respect to the Text Encoding Model, Graphite handles the "Rendering" aspect of writing system implementation.
See “What Is Graphite?” for a more complete description.
Graphite is intended to serve as the principal non-Roman renderer for the FieldWorks package, the new generation of linguistic and translation tools under development within SIL. We also want to make the Graphite library available to any software developer who is working to develop multilingual text processing applications. Contact graphite_nrsi at sil.org with inquiries.
Send email to: graphite_nrsi at sil.org
You are invited to subscribe to any of the Graphite-related mailing lists:
Click here for answers to frequently asked questions about Graphite.
The following are resources that provide more information about the Graphite system. All are in PDF format.
A description of the API by which a text-processing application communicates with Graphite.
A document describing how to integrate Graphite support into a text-processing application.
The GDL paper is an informal overview of the rule-based programming language used to describe font behavior in Graphite.
A tutorial that provides an introduction to the GDL programming language and the process of creating Graphite fonts.
Describes the font table extensions used by the Graphite system. The current version of the compiler will produce version 2 by default, but can be requested to output versions 1 or 3.
An internal working paper that lays out formal requirements for the system, annotated with actual implementation as of version 1.0.
The following are new features that are under consideration for future versions of Graphite:
TechKnowLogia article (2001-11-1)
TechKnowLogia published an article titled “Graphite and WorldPad: Tools for Writing the World’s Other Languages”. The abstract appears below. If you would like to read the complete article you can access it at: www.TechKnowLogia.org and select “Technologies Tomorrow”. You will have to register at the site to view the article, but it is a short and painless procedure.
Over 6,000 languages are spoken in the world, of which about 2,000 are in countries using non-Roman writing systems. Although computer tools have existed for some time to write the national languages in these countries, the tools often have restrictions that make them unusable for the minorities of these same nations. Graphite, and later WorldPad, was developed to provide smart font rendering capabilities and text editing that enables any combination of symbols when writing any script. The first use of this has been with the International Phonetic Alphabet, which is often used by linguists and others for learning these minority languages. Thus, Graphite and WorldPad provide tools for learning minority languages, as well as for literacy for those minorities.