Fonts: Difference between revisions

From OLPC
Jump to navigation Jump to search
No edit summary
mNo edit summary
Line 13: Line 13:
Supported by Tibetan Machine Uni which is [http://www.thdl.org/xml/show.php?xml=/tools/tibfonts.xml&l=uva10928423419921 available under the GNU General Public License].
Supported by Tibetan Machine Uni which is [http://www.thdl.org/xml/show.php?xml=/tools/tibfonts.xml&l=uva10928423419921 available under the GNU General Public License].


==== Scripts in Pilot Countries ====
== Scripts in Pilot Countries ==
The OLPC will be initially distributed to about half a dozen countries as part of a [http://www.laptop.org/map.en_US.html Pilot program]. In this section we list the generic language/script requirements for this list of countries.
The OLPC will be initially distributed to about half a dozen countries as part of a [http://www.laptop.org/map.en_US.html Pilot program]. In this section we list the generic language/script requirements for this list of countries.


Line 42: Line 42:
Thailand
Thailand
*Thai [[Thai script]](คอลัมน์ประจำวัน)
*Thai [[Thai script]](คอลัมน์ประจำวัน)
===General list of Scripts===
==General list of Scripts==


List of Scripts can be found at unicode website [[http://www.unicode.org/charts/]] most of them are not available in the
List of Scripts can be found at unicode website [[http://www.unicode.org/charts/]] most of them are not available in the
Line 49: Line 49:




=== Font Projects ===
== Font Projects ==


It is not clear yet whether the OLPC will be using [http://en.wikipedia.org/wiki/Fontconfig fontconfig] to manage the fonts. In case it does, then, for Latin/Greek/Cyrillic-based languages there might be a need for a triplet of font faces: sans, serif and monospace. For other scripts, these three faces do not apply, therefore only one font is required.
It is not clear yet whether the OLPC will be using [http://en.wikipedia.org/wiki/Fontconfig fontconfig] to manage the fonts. In case it does, then, for Latin/Greek/Cyrillic-based languages there might be a need for a triplet of font faces: sans, serif and monospace. For other scripts, these three faces do not apply, therefore only one font is required.

Revision as of 13:19, 9 June 2006

To discuss the content of this page, visit Talk:Fonts (it's the link labeled Discussion above).

Introduction

Because the OLPC will be used in many different countries with different writing systems and scripts, it needs to have fairly broad font support. In addition, the OLPC is targetted at regions where there are currently very few computers in use. This means that existing fonts may not support the full set of glyphs required. The OLPC relies on the Unicode support in GTK+/Pango, Python, and Linux in order to input, manipulate and display text. There are many Unicode fonts available but in order to be used on the OLPC, we either need an open-source font (preferable) or a license to use the font.

Fonts

Alan Wood maintains a very comprehensive list of Unicode fonts. In order to help us out, please review the fonts on his page (and elsewhere). Start a section below with the name of the script and then list the names of fonts that are open-source or licensable, along with a URL pointing to the open source licence or contact information for the font owner. Please, if it is a commercial font, do not just list Microsoft or Bitstream. We need an actual contact within the commercial organization that can issue a licence.

Bengali

Supported by Alphabetum, a commercial font which can be licensed from the author.

Pan-Nigerian

This uses the Latin-Extended ranges supported by Gentium.

Tibetan

Supported by Tibetan Machine Uni which is available under the GNU General Public License.

Scripts in Pilot Countries

The OLPC will be initially distributed to about half a dozen countries as part of a Pilot program. In this section we list the generic language/script requirements for this list of countries.

Brazil

  • Latin

China

India

Nigeria

Thailand

  • Thai Thai script(คอลัมน์ประจำวัน)

General list of Scripts

List of Scripts can be found at unicode website [[1]] most of them are not available in the Projects listed below. Table of scripts, languages, countries [[2]]


Font Projects

It is not clear yet whether the OLPC will be using fontconfig to manage the fonts. In case it does, then, for Latin/Greek/Cyrillic-based languages there might be a need for a triplet of font faces: sans, serif and monospace. For other scripts, these three faces do not apply, therefore only one font is required.

The current main font used in most Linux distributions (Fedora, Ubuntu, SuSE, Debian, etc) is Bitstream Vera. Bitstream Vera supports Basic Latin/Latin-1 and a small proportion of Latin Extended.

The lack of coverage of Latin Extended, Greek, Cyrillic created several derivative font projects.

One of those derivatives is DejaVu, which at version 2.6 supports Basic Latin/Latin-1/Latin Extended/Cyrillic/Greek/Greek Polytonic and other Unicode ranges. DejaVu also supports Unicode symbols (dingbats (PDF), arrows (PDF), etc) which may make it more appealing to kids as they can easily add them to their documents.

DejaVu is also the default font in Ubuntu 6.06 which will be released on 1st June 2006. It will be one of the first distributions that has good font support by default for Latin, Cyrillic and Greek at the same time.

See PDF samples of the DejaVu fonts.

Open fonts catalogs

To find more quality free/libre/open smart fonts with wide Unicode coverage see Fonts under the Open Font License and Unicode Font Guide For Free/Libre Open Source Operating Systems.


Table of available fonts

Available free and open-source fonts (feel free to expand)
sans serif monospaced
DejaVu Sans (LGC), MgOpenCanonica (lG), DejaVu Serif (LGC), Gentium (LGc), MgOpenCosmetica, MgOpenModata (???), MgOpenModerna (???) DejaVu Sans Mono (LGC),
Garuda (l, Thai)
L: Covers Latin-based scripts (Basic Latin, Latin-1, Latin Extended)
l: Covers Latin-based scripts (Basic Latin, Latin-1)
G: Covers Greek (modern, ancient)
g: Covers Greek (modern)
C: Covers Cyrillic, full table
c: Covers Cyrillic, basic support

lgc is adequate for more uses such as Spanish, Portuguese, Greek and Russian.

Assuming that fontconfig will be used, there is a need of a triplet (sans, serif, monospace).

  • Feel free to populate the table above.
  • Any hints on CJK or complex scripts?

FAQ

Q. The main Latin font does not currently support Thai. What can we do?

A. fontconfig supports font preference lists, that is, you can have several different fonts that when combined, can cover as much as possible from the Unicode character space.

For example, if Garuda (Thai font) is suitable for Thai text only, you set first preference to DejaVu and second preference to Garuda. Non-Thai text will be with DejaVu and Thai text with Garuda. If you prefer Garuda for Basic Latin/Thai and no other fonts available, simply put Garuda in the preference list. If you want Garda for Basic Latin/Thai and any other characters from DejaVu, set first preference to Garuda and second preference to DejaVu.

expand