PDFium Delphi Component Docs

InsertFormObjectFromXObject Metodo

Componente: TPdf  ·  Unità: PDFium
Inserisce UNA copia della pagina racchiusa in un TPdfXObject nella pagina corrente di questo documento e restituisce l'FPDF_PAGEOBJECT così il chiamante può posizionarlo, scalarlo o ruotarlo

Syntax

function InsertFormObjectFromXObject(XObject: TPdfXObject): FPDF_PAGEOBJECT;

Description

InsertFormObjectFromXObject è la seconda metà dell'API di riuso dei Form XObject della v1.25.0. Prende un handle TPdfXObject (costruito da CreateXObjectFromPage) e inserisce UN oggetto FPDF_PAGEOBJECT che referenzia quell'XObject nella pagina CORRENTE di QUESTO documento. Ogni chiamata inserisce un nuovo oggetto di pagina, quindi lo stesso XObject può essere timbrato più volte su più pagine della destinazione — ogni timbro condivide la cache di contenuto pagina sottostante, il che mantiene la dimensione del file bassa anche quando il watermark / template è elaborato

L'handle FPDF_PAGEOBJECT restituito permette al chiamante di chiamare FPDFPageObj_SetMatrix o gli helper TPdfMatrix per posizionare / scalare / ruotare il timbro in qualsiasi punto della pagina. Senza una trasformazione esplicita la pagina inserita sta nell'angolo in basso a sinistra a scala 1:1, cosa che è quasi mai quello che vuoi; imposta sempre una matrice prima di chiamare UpdatePage

Restituisce nil in caso di fallimento (XObject nil, questo TPdf non Active, nessuna pagina corrente). Dopo l'inserimento l'oggetto di pagina è di proprietà della pagina, non dell'XObject — liberare l'XObject non invalida l'oggetto di pagina inserito

Remarks

Example

uses FPdfMatrix;

var
  PageObj: FPDF_PAGEOBJECT;
  M: TPdfMatrix;
begin
  Pdf1.PageNumber := 3;
  PageObj := Pdf1.InsertFormObjectFromXObject(XObj);
  if PageObj <> nil then
  begin
    M := TPdfMatrix.Create;
    try
      M.Translate(100, 200);
      M.Scale(0.5, 0.5);
      M.Rotate(15);
      FPDFPageObj_SetMatrix(PageObj, M.AsMatrix);
    finally
      M.Free;
    end;
    Pdf1.UpdatePage;
  end;
end;

See Also

CreateXObjectFromPage, UpdatePage, PageNumber