PDFium Delphi Component Docs

ImportNPagesToOne Méthode

Composant: TPdf  ·  Unit: PDFium
Construit un tout nouveau TPdf dont les pages sont des composites NumX×NumY des pages du document source, adapté aux mises en page d'impression N-up

Syntax

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

Description

ImportNPagesToOne compose les pages de CE document dans un nouveau PDF de sortie où chaque page de sortie dispose NumX × NumY pages sources dans une grille. Les pages sources sont mises à l'échelle pour remplir leur cellule en préservant leurs proportions d'origine ; les cellules qui dépasseraient les limites de la page de sortie sont rognées

OutputWidth et OutputHeight sont en unités utilisateur PDF (1 unité = 1/72 pouce). Pour une page de sortie A4 paysage, passez 842 × 595. Chaque ligne est remplie de gauche à droite, puis ligne par ligne de haut en bas, reproduisant la mise en page N-up classique des imprimantes

La fonction renvoie une nouvelle instance de TPdf. L' appelant est propriétaire de l'objet renvoyé et doit le Free (ou définir Active := False avant de l'affecter à une autre variable). Renvoie nil si PDFium a rejeté les arguments (comptage d'axe nul, OOM, etc.). Le document source (ce TPdf) doit être Active

Le document renvoyé contient une page composite par ceil(SourcePages / (NumX×NumY)). La dernière page composite peut être partiellement remplie si le nombre de pages sources n'est pas un multiple exact du nombre de cellules

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