|
קובע אם מסמך 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
|