22.03.2015 Views

DLI Implementation and Reference Guide - Datalogics

DLI Implementation and Reference Guide - Datalogics

DLI Implementation and Reference Guide - Datalogics

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

4.4 <strong>DLI</strong> <strong>Implementation</strong> <strong>and</strong> <strong>Reference</strong> <strong>Guide</strong><br />

glyph identifiers in the embedded font stream. Text is input using the DLPDFCONTENT<br />

text calls as if using a single-byte font.<br />

Concepts <strong>and</strong> Facilities: <strong>Guide</strong> to the DL Pager Composition System<br />

Most TrueType <strong>and</strong> OpenType font files can be used to create either TrueType (singlebyte)<br />

or CIDType2 PDF fonts. In all cases, TrueType <strong>and</strong> CIDType2 fonts should be<br />

both embedded <strong>and</strong> subset to ensure reliable results when viewing <strong>and</strong> printing. In this<br />

chapter, the term "TrueType font" means a PDF TrueType font using a one-byte<br />

encoding, <strong>and</strong> the term "CIDType2 font" means a TrueType or OpenType font using<br />

GID values to access characters in the PDF file.<br />

Structure of a <strong>DLI</strong> Font<br />

A font is reflected in the structure DLPDFFONT. These structures are created by the<br />

font creation calls on a per-document basis. They may be used only within the<br />

document they were created with. Fonts are tracked within the document, <strong>and</strong><br />

destroyed when the document is destroyed. Pointers to fonts are invalid after the<br />

destruction of their document. All DLPDFFONT structures for a given document will<br />

be released when that document is destroyed. Therefore, methods that use<br />

DLPDFFONT as a parameter (i.e. dlpdfcontenttext, dlpdfcontentwidetext,<br />

dlpdfcontenttextwidth, dlpdfcontentwidetextwidth) must be called<br />

before the document is destroyed<br />

Font Embedding Status<br />

The field DLPDFFONT->NotEmbedded will be TRUE only if a request was made to<br />

subset the font but the request procedure failed. If the font could not embed due to<br />

license restrictions (i.e. the request procedure functioned correctly, but the font itself is<br />

not licensed for embedding), an exception will be raised instead.<br />

Font Subsetting Status<br />

The field DLPDFFONT->SubSetMap will be NULL if a font is not subset. The field<br />

will be not NULL if a font is (or will be) subset.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!