CompressFonts

字体、文档属性

描述

设置默认压缩标志,该标志应用于此调用后添加到文档的 TrueType、OpenType、Packaged 和 Type 1 字体程序。启用时,字体流会包装在 /FlateDecode 过滤器中;禁用时,字体流以未压缩形式存储

语法

Delphi

Function TPDFlib.CompressFonts(Compress: Integer): Integer;

ActiveX

Function PDFlib::CompressFonts(Compress As Long) As Long

DLL

int DLCompressFonts(int InstanceID, int Compress);

参数

Compress0 — 不压缩字体流
1 — 使用 Flate 压缩字体流

返回值

0Compress 参数超出范围
1已更新字体压缩设置

备注

此设置仅影响在调用后添加的字体,已嵌入文档的字体会保留其原始编码。默认值为压缩(符合 PDF 阅读器预期且输出最小)。仅在调试字体提取问题或与拒绝 flate 编码字体流的下游管线集成时禁用压缩

字体子集化(AddTrueTypeSubsettedFont)和字体压缩彼此独立:子集化减少包含的字形数量,压缩减少所包含字形数据的大小

示例

// Default behaviour: every font added is flate-compressed
PDF.CompressFonts(1);
PDF.AddTrueTypeFontFromFile('C:\Windows\Fonts\arial.ttf');
PDF.AddTrueTypeFontFromFile('C:\Windows\Fonts\arialbd.ttf');

// One uncompressed font for downstream tooling that cannot decode flate fonts
PDF.CompressFonts(0);
PDF.AddType1Font('Helvetica');

另请参阅

CompressContent、CompressImages、AddTrueTypeFont、AddTrueTypeSubsettedFont、AddOpenTypeFontFromFile