THotPDF.Compression Property

 

THotPDF.Compression

THotPDF

 

顶部  上一页  下一页

决定 PDF 文件的压缩方式

 

type

THPDFCompressionMethod = (cmNone, cmFlateDecode);

 

Delphi 语法:

property Compression: THPDFCompressionMethod;

 

C++ 语法:

__property THPDFCompressionMethod Compression;

 

说明

使用 Compression 获取或设置 PDF 文件压缩方式。Compression 可取以下值:

 

值                含义


cmNone                不压缩 PDF 文件

cmFlateDecode        PDF 文件使用 deflate 压缩方法编码

 

叠加更多体积缩减

Compression 负责页面内容 / 字体 / 图像流的 FlateDecode 编码,同时也决定结构容器使用的 Flate 压缩力度:包括 UseXRefStream 输出的交叉引用流(cross-reference stream),以及 UseObjectStreams 输出的 /Type /ObjStm 容器(ISO 32000-1 7.5.7)。UseXRefStream 会把文本版交叉引用表换成压缩的 /Type /XRef 流,其负载经 PNG Up 预测器(/Predictor 12)处理,free-list 空洞则折叠进 /Index 子区段。真实的多页文档通常还能在 FlateDecode 压缩流的基础上再省 20-40% 体积

要把这些选项连同字体子集化一起对单个文档全部打开,设置 CompressDocument

 

代码示例

HPDF := THotPDF.Create( nil );
try
  HPDF.FileName := 'c:\Output.pdf';
  HPDF.BeginDoc;                     // Start PDF document creation
  HPDF.CurrentPage.TextOut( 100, 100, 0, 'Hello World!' );
  HPDF.EndDoc;                       // Finish and save PDF document
finally
  HPDF.Free;
end;