PDFium Component Docs

ImportNPagesToOne methode

Component: TPdf  ·  Unit: PDFium
Bouwt een gloednieuwe TPdf waarvan de pagina's NumX×NumY composieten van de pagina's van het brondocument zijn, geschikt voor N-up afdruklay-outs

Syntax

function ImportNPagesToOne(
  OutputWidth, OutputHeight: Single;
  NumX, NumY : Cardinal): TPdf;

Description

ImportNPagesToOne stelt pagina's van DIT document samen in een nieuwe uitvoer-PDF waarvan elke uitvoerpagina NumX × NumY bronpagina's in een raster plaatst. De bronpagina's worden geschaald om in hun cel te passen met behoud van hun oorspronkelijke beeldverhouding; cellen die voorbij de uitvoerpaginagrenzen zouden reiken worden bijgesneden.

OutputWidth en OutputHeight zijn in PDF-gebruikerseenheden (1 eenheid = 1/72 inch). Voor een A4-landschap-uitvoerpagina geeft u 842 × 595. Elke rij wordt van links naar rechts gevuld, vervolgens rij voor rij van boven naar beneden, overeenkomstig de conventionele printer-N-up-lay-out.

De functie retourneert een verse TPdf-instantie. De aanroeper is eigenaar van het geretourneerde object en moet het Freen (of Active := False instellen voordat aan een andere variabele wordt toegewezen). Retourneert nil als PDFium de argumenten afwees (nul as-aantal, OOM enz.). Het brondocument (deze TPdf) moet Active zijn.

Het geretourneerde document draagt één compositiepagina per ceil(SourcePages / (NumX×NumY)). De laatste compositiepagina kan gedeeltelijk gevuld zijn als het aantal bronpagina's geen exact veelvoud is van het aantal cellen.

Remarks

Example

var
  Composite: TPdf;
begin
  Pdf1.FileName := 'C:\Slides.pdf';
  Pdf1.Active := True;
  // 4-up landscape: 842 x 595 pt, 2 columns x 2 rows
  Composite := Pdf1.ImportNPagesToOne(842, 595, 2, 2);
  try
    if Composite <> nil then
      Composite.SaveAs('C:\Slides_4up.pdf');
  finally
    Composite.Free;
  end;
end;

See Also

ImportPages, ImportPagesByIndex, MovePages