Sophie

Sophie

distrib > Mageia > 5 > x86_64 > by-pkgid > 0da03bb1805d73f1aaf1c06fe3cffe2f > files > 22

fontforge-1.0-1.20120731.9.mga5.x86_64.rpm

<HTML>
<HEAD>
  <!-- Created with AOLpress/2.0 -->
  <!-- AP: Created on: 5-Jun-2002 -->
  <!-- AP: Last modified: 2-Mar-2004 -->
  <LINK REL="icon" href="fftype16.png">
  <TITLE>Extensions to Adobe's Bitmap Distribution Format for greymap (anti-aliased)
  fonts</TITLE>
  <LINK REL="stylesheet" TYPE="text/css" HREF="FontForge.css">
</HEAD>
<BODY>
<DIV id="in">
<H1 ALIGN=Center>
  Extensions to
  <A HREF="http://partners.adobe.com/asn/developer/PDFS/TN/5005.BDF_Spec.pdf">Adobe's
  BDF</A> for greymap fonts
</H1>
<P>
Adobe has defined a file format for distributing bitmap fonts called BDF.
MicroSoft extended this format to support greymap (anti-aliased, each pixel
representing various levels of grey rather than just black/white) fonts.
Recently others have started using this same format
(<A HREF="http://crl.nmsu.edu/~mleisher/xmbdfed.html">xmbdfed</A>,
<A HREF="http://freetype.sf.net/">freetype</A> and
<A HREF="index.html">fontforge</A>).
<P>
In Section 3.1 of the format description Adobe defines a "SIZE" keyword.
MicroSoft has added an optional fourth parameter to this keyword<BR>
<BIG><CODE>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;SIZE <I>PointSize XRes YRes
[Bits_Per_Pixel]</I></CODE></BIG><BR>
This fourth parameter may take the values 1, 2, 4 and 8. If omitted it is
assumed to be 1. (FontForge will also read in fonts with values of 16 and
32, but it will simply ignore any low order data and only retain the high
order byte).
<P>
FontForge will also include a font property<BR>
<BIG><CODE>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;BITS_PER_PIXEL
<I>Value</I></CODE></BIG><BR>
in all greymap fonts it generates.
<P>
FontForge will also mark all such fonts as version 2.3 of the bdf standard
<BR>
<BIG><CODE>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;STARTFONT 2.3</CODE></BIG>
<P>
The bitmap data are stored with 8, 4, 2 or 1 pixels packed into a byte depending
on whether BITS_PER_PIXEL is 1, 2, 4 or 8. As in Adobe's spec all data are
presented in hex and an even number of nibbles must be present.
<P>
<B>Example:</B><BR>
<CODE>&nbsp; BITMAP<BR>
&nbsp; C8<BR>
&nbsp; ENDCHAR</CODE><BR>
Would represent the pixel sequences
<TABLE BORDER CELLPADDING="2">
  <TR>
    <TH>Bits/Pixel</TH>
    <TH>Pixels</TH>
  </TR>
  <TR>
    <TH>1</TH>
    <TD>1,1,0,0,1,0,0,0</TD>
  </TR>
  <TR>
    <TH>2</TH>
    <TD>3,0,2,0</TD>
  </TR>
  <TR>
    <TH>4</TH>
    <TD>C,8</TD>
  </TR>
  <TR>
    <TH>8</TH>
    <TD>C8</TD>
  </TR>
</TABLE>
<P>
</DIV>
</BODY></HTML>