|
Určuje, zda dokument PDF vkládá písma použitá dokumentem
Syntaxe Delphi:
property FontEmbedding: Boolean;
Syntaxe C++:
__property bool FontEmbedding;
Popis
Písmo může být vloženo do PDF jako data programu písma. Nastavte FontEmbedding na true, aby se písma vložila a aby se vybrané písmo zachovalo i na systémech, kde nemusí být nainstalováno
Pro aktuální výstup Unicode a CIDFontType2 HotPDF zachovává původní ID glyfů vložených písem a zapisuje mapu ToUnicode spolu s CIDToGIDMap /Identity. To poskytuje spolehlivější vykreslování v přísných prohlížečích PDF
Při vkládání písem TrueType čte HotPDF název PostScript z programu písma a udržuje /BaseFont, /FontDescriptor /FontName, /FontFamily a názvy potomků CID písem konzistentní s vloženými daty písma. Tím se předchází problémům se zachycením písma na straně prohlížeče, když se požadovaný název Windows face liší od interního názvu PostScript vloženého písma
Nastavte EnableFontSubsetting na true před BeginDoc, když má finální PDF vložit pouze glyfy použité dokumentem
Pro vizuální testy věrnosti písem použijte FontEmbedding = true spolu s StandardFontEmulation = false. Praktický příklad najdete v Tests\Delphi\FontTest
Příklad kódu
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' );
Viz také: EnableFontSubsetting, NotEmbeddedFonts, StandardFontEmulation
|