|
Estos métodos proporcionan un flujo de documento cargado para insertar, extraer y reordenar páginas
Sintaxis 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;
Descripción
HPDFParsePageRange convierte cadenas de rangos base uno, como 1,3-4,6-, en índices de página base cero. Una entrada vacía selecciona todas las páginas. Los números de página no válidos, los rangos descendentes y los tokens mal formados lanzan una excepción
InsertPagesFromDocument copia páginas desde otra instancia cargada de THotPDF al documento actual. Las llamadas existentes con arrays de base cero siguen admitidas, y la sobrecarga de string acepta rangos de página de base uno. InsertAfterPage es de base cero; pase -1 para insertar al principio
AppendPagesFromDocument anexa las páginas de origen seleccionadas al final del documento actual usando la misma sintaxis de rangos de página de base uno
CopyPageByPhysicalIndex copia una página de origen por su índice físico basado en cero a una posición de destino basada en cero
ExtractPagesToFile escribe páginas seleccionadas del documento actual en un nuevo archivo PDF. Las llamadas existentes con arrays de base cero siguen siendo compatibles, y la sobrecarga de string acepta rangos de página de base uno
OnPageOperationProgress informa del progreso a nivel de página en las operaciones de append, insert, extract y en las futuras operaciones de páginas de tipo merge
MovePage reordena el documento actual moviendo una página de base cero a otra posición de base cero. El método actualiza el array de páginas cargadas y el árbol raíz de páginas para que los guardados y las llamadas de extracción posteriores usen el nuevo orden
SaveLoadedDocument escribe el grafo de objetos cargado en un archivo nuevo después de editar páginas, formularios u operaciones de copia
Ejemplo de código
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');
|