keiron 2002/11/20 01:55:49
Modified: src/documentation/content/xdocs/dev book.xml
Added: src/documentation/content/xdocs/dev fonts.xml
Log:
new dev fonts.xml file to store some useful links and information
about font work
Submitted By: Victor Mote <[EMAIL PROTECTED]>
Revision Changes Path
1.6 +1 -0 xml-fop/src/documentation/content/xdocs/dev/book.xml
Index: book.xml
===================================================================
RCS file: /home/cvs/xml-fop/src/documentation/content/xdocs/dev/book.xml,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- book.xml 19 Nov 2002 07:57:29 -0000 1.5
+++ book.xml 20 Nov 2002 09:55:49 -0000 1.6
@@ -21,6 +21,7 @@
</menu>
<menu label="Extras">
<menu-item label="SVG" href="svg.html"/>
+ <menu-item label="Fonts" href="fonts.html"/>
</menu>
<menu label="Developers">
<menu-item label="Design" href="../design/index.html"/>
1.1 xml-fop/src/documentation/content/xdocs/dev/fonts.xml
Index: fonts.xml
===================================================================
<?xml version="1.0" standalone="no"?>
<!-- $Id: fonts.xml,v 1.1 2002/11/20 09:55:49 keiron Exp $ -->
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V1.1//EN"
"http://cvs.apache.org/viewcvs.cgi/*checkout*/xml-forrest/src/resources/schema/dtd/document-v11.dtd">
<document>
<header>
<title>Fonts (Developer Information)</title>
</header>
<body>
<section>
<title>Goals</title>
<ul>
<li>refactor existing font logic for better clarity and to reduce
duplication</li>
<li>parse registered font metric information on-the-fly (to make sure most
up-to-date parsing is used??)</li>
<li>resolve whether the FontBBox, StemV, and ItalicAngle font metric
information is important or not -- if so, parse the .pfb file to extract it when
building the FOP xml metric file</li>
<li>handle fonts registered at the operating system (through AWT)</li>
<li>add support for parsing OpenType fonts</li>
</ul>
</section>
<section>
<title>Issues</title>
<ul>
<li>Why are we using our own font metric parsing and registration system,
instead of the AWT system provided as part of Java?
<ul>
<li>Answer 1: Many of our customers use FOP in a so-called "headless"
server environment -- that is, the operating system is operating in character mode,
with no concept of a graphical environment. We need some mechanism of allowing these
environments to get font information.</li>
<li>Answer 2: At some level, we don't yet fully trust AWT to handle
fonts correctly. There are still unresolved discrepancies between the two systems.</li>
</ul>
</li>
</ul>
</section>
<section>
<title>Implementation</title>
<p>There are two main font functions needed within FOP:</p>
<ul>
<li>provision of a font object to be used in layout</li>
<li>embedding of a font file in output (such as PDF)</li>
</ul>
<p>For the first of these, we will implement something along the lines of a
"Facade" Structural Pattern to hide the differences between the various font types and
font sources from the rest of the system.
Public classes will consist of TypeFaceFamily, TypeFace, and Font. (TypeFace roughly
corresponds to the contents of a normal font file, while Font is a general typeface
implemented at a specific point size, and perhaps with other specific parameters).
When another part of FOP requests a font object, existing font objects will be
checked first, and an appropriate one returned if possible.
If not, the Font logic should resolve the TypeFace and TypeFaceFamily if possible,
create a Font object, and return it.</p>
</section>
<section>
<title>Resources</title>
<section>
<title>Type 1 Fonts</title>
<ul>
<li><link
href="http://partners.adobe.com/asn/developer/pdfs/tn/T1_SPEC.PDF">Adobe Type 1 Font
Format</link></li>
<li>According to the Adobe web site, the documentation for the font
metrics files (.pfm = printer font metrics) is written and controlled by Microsoft,
since it is actually a workaround to allow Type 1 fonts to be used on a GUI screen in
Windows. However, the document does not appear to be on the Microsoft web site. The
best resource for this information is <link
href="http://partners.adobe.com/asn/developer/pdfs/tn/5178.PFM.pdf">Adobe Technical
Note #5178</link>: Building PFM Files for Postscript-Language CJK Fonts</li>
<li>FOP does not currently use the Adobe Font Metrics file, but the
specification can be found in <link
href="http://partners.adobe.com/asn/developer/pdfs/tn/5004.AFM_Spec.pdf">Adobe
Technical Note #5004</link>: Adobe Font Metrics File Format Specification</li>
<li><link
href="http://partners.adobe.com/asn/developer/pdfs/tn/5040.Download_Fonts.pdf">Adobe
Technical Note #5040</link>: Supporting Downloadable Postscript Language Fonts may
also include some useful information.</li>
</ul>
</section>
<section>
<title>TrueType Fonts</title>
<ul>
<li>The <link
href="http://www.microsoft.com/typography/tt/ttf_spec/ttspec.zip">TrueType
specification</link></li>
</ul>
</section>
<section>
<title>OpenType Fonts</title>
<ul>
<li>The <link
href="http://download.microsoft.com/download/Typography/archive/v1.4/WIN98MeXP/EN-US/otsp14.exe">OpenType
specification</link></li>
<li>The Adobe <link
href="http://www.adobe.com/type/opentype/main.html">Introduction to OpenType
fonts</link> page has some useful general information and links.</li>
</ul>
</section>
</section>
</body>
</document>
<!-- Last Line of $RCSfile: fonts.xml,v $ -->
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]