THotPDF.FontEmbedding Property

 

THotPDF.FontEmbedding

THotPDF

 

למעלה  הקודם  הבא

קובע אם מסמך PDF מטמיע את הפונטים שבהם המסמך משתמש

 

Delphi syntax:

property FontEmbedding: Boolean;

 

C++ syntax:

__property bool FontEmbedding;

 

תיאור

ניתן להטמיע פונט ב-PDF כנתוני תוכנית פונט. הגדר FontEmbedding ל-true כדי להטמיע פונטים ולשמר את ה-typeface שנבחר במערכות שבהן הפונט עשוי לא להיות מותקן

 

עבור פלט Unicode ו-CIDFontType2 הנוכחי, HotPDF שומרת את glyph IDs המקוריים לפונטים מוטמעים וכותבת מפת ToUnicode יחד עם CIDToGIDMap /Identity. הדבר מספק rendering אמין יותר בקוראי PDF קפדניים

 

בעת הטמעת פונטי TrueType, ‏HotPDF קוראת את שם PostScript של תוכנית הפונט ושומרת על עקביות /BaseFont, ‏/FontDescriptor /FontName, ‏/FontFamily ושמות פונטי CID צאצאים עם נתוני הפונט המוטמעים. הדבר מונע בעיות font capture בצד viewer כאשר שם ה-face של Windows שנמסר ל-SetFont שונה משם PostScript הפנימי של הפונט המוטמע

 

הגדר EnableFontSubsetting ל-true לפני BeginDoc כאשר ה-PDF הסופי צריך להטמיע רק את glyphs ששימשו במסמך

 

לבדיקות חזותיות של font fidelity, השתמש ב-FontEmbedding = true יחד עם StandardFontEmulation = false. ראה Tests\Delphi\FontTest כדוגמה מעשית

 

Code Example

HPDF.FontEmbedding := true;                      // Embed selected fonts in the PDF
HPDF.StandardFontEmulation := false;            // Use the actual installed font
HPDF.CurrentPage.SetFont( 'Calibri', [], 12 );
HPDF.CurrentPage.TextOut( 100, 100, 0, 'This text uses embedded Calibri glyphs' );

HPDF.FontEmbedding := false;                    // Disable embedding for following fonts
HPDF.CurrentPage.SetFont( 'Times New Roman', [], 12 );
HPDF.CurrentPage.TextOut( 100, 80, 0, 'This text depends on viewer font availability' );

 

See also: EnableFontSubsetting NotEmbeddedFonts StandardFontEmulation