|
Packit |
f0e7df |
Usage of GNU FreeFont
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
Language scripts and faces
|
|
Packit |
f0e7df |
==========================
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
There are three faces (serif, sans-serif, and monospace), and four styles
|
|
Packit |
f0e7df |
(regular, bold, cursive/italic, and bold cursive/italic) for each face.
|
|
Packit |
f0e7df |
There is one font file per face/style combination: 12 files in total.
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
The letters for various languages, as well as specialized symbols, exist
|
|
Packit |
f0e7df |
among the various font files, but they are not uniformly populated.
|
|
Packit |
f0e7df |
All the fonts have complete support for Latin, Cyrillic, and Greek, as
|
|
Packit |
f0e7df |
well as most of the extensions for those scripts.
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
At this time, serif regular has by far the largest number of letters, and
|
|
Packit |
f0e7df |
supports the largest number of writing scripts. However there are writing
|
|
Packit |
f0e7df |
scripts supported by the sans-serif but not by serif.
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
For an overview of which scripts and sets of symbols are supported by
|
|
Packit |
f0e7df |
which face, see the FreeFont 'coverage' web page.
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
Font features
|
|
Packit |
f0e7df |
=============
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
FreeFont has numerous font "features" that perform alterations to the basic
|
|
Packit |
f0e7df |
letters of the font, replacing them with other letters, or positioning them
|
|
Packit |
f0e7df |
with respect to other letters.
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
Many features are activated automatically, but in some environments, they
|
|
Packit |
f0e7df |
present some user control. This documents those features with user control.
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
Language-specific features
|
|
Packit |
f0e7df |
==========================
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
Some OpenType font features are activated only when the text is specified to
|
|
Packit |
f0e7df |
be of a certain language.
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
This is done in HTML by enclosing the text with a tag whose 'lang' attribute
|
|
Packit |
f0e7df |
is set to the appropriate ISO 632.2 language code. In a word processor,
|
|
Packit |
f0e7df |
any block of text can be given a language setting.
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
Latin
|
|
Packit |
f0e7df |
-----
|
|
Packit |
f0e7df |
Catalan ligature improving l·l
|
|
Packit |
f0e7df |
Dutch ligatures for ij, IJ
|
|
Packit |
f0e7df |
Sami localized form for letter Eng
|
|
Packit |
f0e7df |
Turkish overrides ligatures fi ffi of Latin
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
Cyrillic
|
|
Packit |
f0e7df |
--------
|
|
Packit |
f0e7df |
Ukrainian ligature for double i-diaresis
|
|
Packit |
f0e7df |
Serbian/Macedonian localized letters be, and more in italic
|
|
Packit |
f0e7df |
Bulgarian style set for modern glyphs
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
Hebrew
|
|
Packit |
f0e7df |
------
|
|
Packit |
f0e7df |
Yiddish raised vowels under yo
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
Devanagari
|
|
Packit |
f0e7df |
----------
|
|
Packit |
f0e7df |
Sanskrit much larger set of ligatures
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
Hindi, Marathi better spacing of Western punctuation marks
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
Indic languages
|
|
Packit |
f0e7df |
---------------
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
The 'danda' character is encoded in Unicode only in the Devanagari range.
|
|
Packit |
f0e7df |
When writing in scripts of other Indic languages, this same character is to
|
|
Packit |
f0e7df |
be used. But the shapes and line thicknesses of glyphs vary slightly from
|
|
Packit |
f0e7df |
one script to another, so the same glyph for 'danda' may not fit all scripts.
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
By specifying the language of the text, an appropriate glyph for 'danda'
|
|
Packit |
f0e7df |
will be obtained.
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
Style sets
|
|
Packit |
f0e7df |
==========
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
These replacements are activated by specifying a "Style Set".
|
|
Packit |
f0e7df |
These features are accessible only from typesetting software.
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
Cyrillic Bulgarian modern (ss01)
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
Devanagari Bombay (ss02), Calcutta (ss03), Nepali (ss04)
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
Discretionary features
|
|
Packit |
f0e7df |
======================
|
|
Packit |
f0e7df |
These features are accessible only from typesetting software.
|
|
Packit |
f0e7df |
Typically the user must specifically request them.
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
Unless otherwise noted, these are available only in FreeSerif.
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
Ligatures and substitutions
|
|
Packit |
f0e7df |
---------------------------
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
Arabic, Armenian, Hebrew, German, Dutch
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
Small captials
|
|
Packit |
f0e7df |
--------------
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
A limited set of specially drawn small capital letters in Latin.
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
Superscript and subscript
|
|
Packit |
f0e7df |
-------------------------
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
Transform a limited set of characters--mostly Latin letters and numerals--
|
|
Packit |
f0e7df |
to versions well-sized and positioned as superscript or subscript.
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
Numeral styles
|
|
Packit |
f0e7df |
--------------
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
The default numerals of FreeSerif are mono-spaced and of even height.
|
|
Packit |
f0e7df |
It also features proportionally-spaced numerals, and "old-style" numerals--
|
|
Packit |
f0e7df |
those which vary in height and sometimes go beneath the baseline.
|
|
Packit |
f0e7df |
These can be had at discretion.
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
Diagonal fractions
|
|
Packit |
f0e7df |
------------------
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
A limited set of diagonal fraction substitutions are available at discretion.
|
|
Packit |
f0e7df |
The set is more than what is encoded in Unicode.
|
|
Packit |
f0e7df |
They work with the ASCII slash or the mathematical slash U+2215.
|
|
Packit |
f0e7df |
The transform a sequence "number-slash-number" to a diagonal form.
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
Zero
|
|
Packit |
f0e7df |
----
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
A slashed form of the numeral zero is available at discretion.
|
|
Packit |
f0e7df |
Available in all faces.
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
Alternative characters
|
|
Packit |
f0e7df |
======================
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
FreeSerif has some listings of alternatives for specific characters.
|
|
Packit |
f0e7df |
Again this is use primarily in specialized typesetting software.
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
Greek, Latin
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
Use in LaTeX
|
|
Packit |
f0e7df |
============
|
|
Packit |
f0e7df |
It is possible to use Unicode fonts in recent LaTeX implementations, but in
|
|
Packit |
f0e7df |
LuaTeX http://www.luatex.org/ and
|
|
Packit |
f0e7df |
XeTeX http://tug.org/xetex/
|
|
Packit |
f0e7df |
it is particularly easy to use Unicode text, and to enable font features.
|
|
Packit |
f0e7df |
Recent versions of these systems use the 'fontspec' package to choose fonts
|
|
Packit |
f0e7df |
and features.
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
A very simple document might contain the lines
|
|
Packit |
f0e7df |
---------------------------------------------------------------------------
|
|
Packit |
f0e7df |
\documentclass{ltxdockit}
|
|
Packit |
f0e7df |
\usepackage{fontspec}
|
|
Packit |
f0e7df |
\usepackage{xunicode}
|
|
Packit |
f0e7df |
\setmainfont[]{FreeSerif}
|
|
Packit |
f0e7df |
\begin{document}
|
|
Packit |
f0e7df |
{\fontspec[Script=Default,Fractions={On}]{FreeSerif}
|
|
Packit |
f0e7df |
1/7 3/10 7/10}
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
x\raisebox{-0.5ex}{{\scriptsize ai}}
|
|
Packit |
f0e7df |
x{\fontspec[Script=Default,VerticalPosition={Inferior}]{FreeSerif}
|
|
Packit |
f0e7df |
abcdefghijklmnopqrstuvwxyz+−(0123456789)} \\
|
|
Packit |
f0e7df |
x\raisebox{0.85ex}{{\scriptsize ai}}
|
|
Packit |
f0e7df |
x{\fontspec[Script=Default,VerticalPosition={Superior}]{FreeSerif}
|
|
Packit |
f0e7df |
abcdefghijklmnopqrstuvwxyz+−(0123456789)}
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
{\fontspec[Script=Latin]{FreeSerif}
|
|
Packit |
f0e7df |
\textsc{Small Caps} }
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
{ Bсички хора се раждат свободни и равни по достойнство и права.
|
|
Packit |
f0e7df |
\fontspec[Script=Cyrillic,Language=Bulgarian,Variant={1}]{FreeSerif} \selectfont
|
|
Packit |
f0e7df |
Bсички хора се раждат свободни и равни по достойнство и права. }
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
\end{document}
|
|
Packit |
f0e7df |
---------------------------------------------------------------------------
|
|
Packit |
f0e7df |
Here are some 'fontspec' setting-value pairs meaningful for FreeFont.
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
Numbers: Lining OldStyle Proportional SlashedZero
|
|
Packit |
f0e7df |
Fractions: On
|
|
Packit |
f0e7df |
VerticalPosition: Superior Inferior
|
|
Packit |
f0e7df |
Ligatures: Common Historical
|
|
Packit |
f0e7df |
Letters: UppercaseSmallCaps
|
|
Packit |
f0e7df |
Variant: 1 (etc. -- must be in {} picks style set.)
|
|
Packit |
f0e7df |
---------------------------------------------------------------------------
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
|
|
Packit |
f0e7df |
$Id: usage.txt,v 1.10 2011-07-16 08:38:06 Stevan_White Exp $
|