THotPDF Page Operation Methods

THotPDF

顶部

这些方法提供面向已加载文档的页面插入、提取、复制、保存和重排工作流

 

Delphi 语法:

function HPDFParsePageRange(const PageRange: string; PageCount: Integer): THPDFPageIndexArray;

procedure AppendPagesFromDocument(SourceDoc: THotPDF; const PageRange: string);

procedure InsertPagesFromDocument(SourceDoc: THotPDF; const PageRange: string; InsertAfterPage: Integer);

procedure InsertPagesFromDocument(SourceDoc: THotPDF; const LogicalPageIndices: array of Integer; InsertAfterPage: Integer);

procedure CopyPageByPhysicalIndex(SourceDoc: THotPDF; SourceIndex: Integer; DestIndex: Integer);

procedure ExtractPagesToFile(const OutputFile: TFileName; const PageRange: string);

procedure ExtractPagesToFile(const OutputFile: TFileName; const LogicalPageIndices: array of Integer);

procedure MovePage(PageIndex: Integer; NewPageIndex: Integer);

procedure SaveLoadedDocument(const TargetFile: TFileName);

property OnPageOperationProgress: THPDFPageOperationProgressEvent;

 

说明

HPDFParsePageRange 将从 1 开始的范围字符串(例如 1,3-4,6-)转换为从 0 开始的页面索引。输入为空表示选择所有页面。无效的页码、递减的范围和格式错误的 token 会抛出异常

InsertPagesFromDocument 把另一个已加载 THotPDF 实例的页面复制到当前文档。既有的从 0 开始数组调用保持支持,字符串重载接受从 1 开始的页面区间。InsertAfterPage 从 0 开始;传 -1 表示插到开头

AppendPagesFromDocument 使用相同的 one-based page-range 语法,把选定的源页面追加到当前文档末尾

CopyPageByPhysicalIndex 按从零开始的物理页索引复制一个源页面到从零开始的目标位置

ExtractPagesToFile 把当前文档中选定的页面写入新的 PDF 文件。既有的从 0 开始数组调用保持支持,字符串重载接受从 1 开始的页面区间

OnPageOperationProgress 报告追加、插入、提取以及将来的合并类页面操作的页面级进度

MovePage 把一个从 0 开始的页面移到另一个从 0 开始的位置,以此重排当前文档。该方法会更新已加载页面数组和根页面树,后续保存与提取调用按新顺序执行

SaveLoadedDocument 在页面编辑、表单编辑或复制操作后,将已加载对象图写入新文件

代码示例

BasePDF.LoadFromFile('base.pdf');
InsertPDF.LoadFromFile('insert.pdf');

BasePDF.InsertPagesFromDocument(InsertPDF, '1-2', 0);
BasePDF.AppendPagesFromDocument(InsertPDF, '2');
BasePDF.MovePage(BasePDF.PagesCount - 1, 1);
BasePDF.ExtractPagesToFile('selected-pages.pdf', '2,4');
BasePDF.SaveLoadedDocument('reordered.pdf');