Sophie

Sophie

distrib > Mageia > 5 > i586 > media > core-release > by-pkgid > 6b465285c9860724a695461ac61807f4 > files > 246

fontforge-1.0-1.20120731.9.mga5.i586.rpm

<HTML>
<HEAD>
  <!-- Created with AOLpress/2.0 -->
  <!-- AP: Created on: 17-Mar-2008 -->
  <!-- AP: Last modified: 21-Mar-2008 -->
  <TITLE>The baseline dialog, and the OpenType BASE table.</TITLE>
</HEAD>
<BODY>
<P>
<IMG SRC="BASEdlg.png" WIDTH="439" HEIGHT="411" ALIGN="Right">This dialog
may be invoked by <CODE>Element-&gt;Other Info-&gt;Horizontal Baselines
</CODE>(or <CODE>Vertical Baselines</CODE>). It allows you to control the
baseline (in either horizontal or vertical orientation) on which the glyphs
of a particular script line up. You may also control the spacing between
baselines, and the interline (or intercolumn) spacing on a per-script, or
even per-language basis.
<P>
See the <A HREF="overview.html#Baseline">Baseline section </A>in the overview
for a description of why this is important.
<P>
There are currently seven standard baselines. The distinctions between them
are described in the OpenType standard. (See the
<A HREF="http://partners.adobe.com/public/developer/opentype/index_tag4.html">baseline
tags section</A>)
<P>
Basically most alphabetic scripts will use the 'romn' baseline, most CJK
scripts will use the 'ideo'graphic baseline. Tibetan and other Indic scripts
will use the 'hang'ing baseline, and math fonts might use the 'math' baseline.
<P>
Roughly the ideographic baseline will line up with the descenders of a Latin
(Greek, Cyrillic) script, and the hanging baseline will line up with the
ascenders.
<P>
You need to select which baselines your font will support. You may want to
specify baselines that apply to scripts which aren't in your font -- this
will mean your font is positioned reasonable when used with glyphs from other
fonts. In the example above, the font has no Indic characters, but it still
specifies a hanging baseline.
<P>
You select which baselines you will support by turning on the appropriate
checkboxes. All scripts will have the same set of baselines. In every script
one baseline will be the default baseline. Generally glyphs in that script
will be drawn with their vertical origin (If you are working on horizontal
baselines, that is) on that baseline. You then should specify how other baselines
are offset from this one.<BR CLEAR="ALL">
<P>
<IMG SRC="BASElang.png" WIDTH="439" HEIGHT="305" ALIGN="Left">You may also
set the minimum and maximum extent of the font for each script (by pressing
the <CODE>[Set Extents] </CODE>button). This corresponds roughly to a per-script
line spacing (or column spacing).
<P>
You may specify a default spacing for the script in general, and then more
specific spacings for a given language.
<P>
In the example at left the default spacing for the Latin script allows room
for one accent above capital letters. Now English doesn't have any accents
(usually), so it might make sense that English could use a tighter line spacing
(and, traditionally this has been done). On the other hand Vietnamese stacks
multiple accents above one another, so it needs more room than the default.
<P>
But suppose you are typesetting French. Now French sometimes is printed with
capital accented letters, but sometimes a "&Agrave;" will be drawn just as
"A" with no accent. So you might create at feature that maps capital accented
letters to their unaccented forms:
<BLOCKQUOTE>
  <PRE>feature NoAc {
  sub Agrave by A;
  sub Aacute by A;
  ...
  sub Egrave by E;
  ...
} NoAc;
</PRE>
</BLOCKQUOTE>
<P>
Then it would be convenient to be change the baseline spacing if these feature
were active. And, indeed you can. Simply select the line for French (in this
case the default language works for French) and press the [Set Feature Extents]
button.
<P ALIGN=Center>
<IMG SRC="BASEfeat.png" WIDTH="331" HEIGHT="252">
<P>
It is possible to set Extent information even if you do not provide baseline
data (that is, if all the baselines are unselected).
</BODY></HTML>