diff options
author | Nick Burch <nick@apache.org> | 2005-09-17 15:40:15 +0000 |
---|---|---|
committer | Nick Burch <nick@apache.org> | 2005-09-17 15:40:15 +0000 |
commit | 2a1bc426a6f035ff32714657a4c60402e6076577 (patch) | |
tree | 0182978d270c2e5bd48bb3a8c3d43187f8e02970 /src | |
parent | e3515e53340344c7eca8fc896779ca2af12649a4 (diff) | |
download | poi-2a1bc426a6f035ff32714657a4c60402e6076577.tar.gz poi-2a1bc426a6f035ff32714657a4c60402e6076577.zip |
Added information from Yegor on font storage
git-svn-id: https://svn.apache.org/repos/asf/jakarta/poi/trunk@353786 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'src')
-rw-r--r-- | src/documentation/content/xdocs/hslf/ppt-file-format.xml | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/src/documentation/content/xdocs/hslf/ppt-file-format.xml b/src/documentation/content/xdocs/hslf/ppt-file-format.xml index 09601e6817..7fd8c6a828 100644 --- a/src/documentation/content/xdocs/hslf/ppt-file-format.xml +++ b/src/documentation/content/xdocs/hslf/ppt-file-format.xml @@ -308,5 +308,43 @@ FF33 00FE 4261426175 Red 1800 24 Font Size = 24 </source> </section> + + <section><title>Fonts in PowerPoint</title> + <p> + PowerPoint stores information about the fonts used in FontEntityAtoms, + which live inside Document.Environment.FontCollection. For every different + font used, a FontEntityAtom must exist for that font. There is always at + least one FontEntityAtom in Document.Environment.FontCollection, + which describes the default font. + </p> + </section> + + <section><title>FontEntityAtom</title> + <p> + The instance field of the record header contains the zero based index of the + font. Font index entries in StyleTextPropAtoms will refer to their required + font via this index. + </p> + <p> + The length of FontEntityAtoms is always 68 bytes. The first 64 bytes of + it hold the typeface name of the font to be used. This is stored as + a null-terminated string, and encoded as little endian unicode. (The + length of the string must not exceed 32 characters including the null + termination, so the typeface name cannot exceed 31 characters). + </p> + + <p> + After the typeface name there are 4 bytes of bitmask flags. The details of these + can be found in the Windows API, under the LOGFONT structure. + The 65th byte is the output precision, which defines how closely the system chosen + font must match the requested font, in terms of heigh, width, pitch etc. + The 66th byte is the clipping precision, which defines how to clip characters + that occur partly outside the clipping region. + The 67th byte is the output quality, which defines how closely the system + must match the logical font's attributes to those of the physical font used. + The 68th (and final) byte is the pitch and family, which is used by the + system when matching fonts. + </p> + </section> </body> </document> |