PDFium Delphi Component Docs

ImportPagesByIndex Methode

Komponente: TPdf  ·  Unit: PDFium
Importiert eine bestimmte Teilmenge von Seiten aus einem anderen TPdf per nullbasiertem Index, mit Kontrolle über den Einfügepunkt im aktuellen Dokument

Syntax

function ImportPagesByIndex(
  Source : TPdf;
  const PageIndices: array of Integer;
  InsertAt : Integer = 0): Boolean;

Description

ImportPagesByIndex kopiert eine explizite Menge von Seiten aus Source in DIESES Dokument. Anders als ImportPages, das einen 1-basierten Range-String ("1-3,7,10-12") parst, nimmt ImportPagesByIndex die Indizes direkt als 0-basiertes Pascal-Open-Array — ideal, wenn die Seitenliste aus Programmlogik stammt (eine angehakte Thumbnail-Liste, eine gefilterte Abfrage, usw.)

InsertAt ist der 0-basierte Zielindex für die ERSTE importierte Seite: 0 übergeben, um vor der vorhandenen Seite 1 einzufügen, PageCount übergeben, um anzuhängen. Außerhalb des Bereichs liegende InsertAt-Werte begrenzt PDFium selbst

Ein leeres PageIndices-Array übergeben, um jede Seite aus Source zu importieren (äquivalent dazu, nil auf C-ABI-Ebene zu übergeben). Das ist die Importier-alles-in-einem-Aufruf-Kurzform

Liefert True bei Erfolg. Liefert False, wenn ein Index in Source außerhalb des Bereichs liegt oder wenn eines der Dokumente nicht Active ist. Löst EPdfError aus, wenn Source nil ist

Remarks

Example

var
  Source: TPdf;
begin
  Source := TPdf.Create(nil);
  try
    Source.FileName := 'C:\Report.pdf';
    Source.Active := True;
    // Import pages 1, 3, 5 (zero-based: 0, 2, 4) and append
    Pdf1.ImportPagesByIndex(Source, [0, 2, 4], Pdf1.PageCount);
    // Or import every source page at the start of Pdf1
    // Pdf1.ImportPagesByIndex(Source, [], 0);
  finally
    Source.Free;
  end;
end;

See Also

ImportPages, ImportNPagesToOne, MovePages