PDFium Delphi Component Docs

Transactions d’édition d’objets de page

Composant: TPdf  ·  Unit: PDFium
Regroupe les mutations natives d’objets de page en une seule opération atomique limitée à la page

Syntax

procedure BeginPageObjectEditTransaction(AllowSignedDocument: Boolean = False);
function CommitPageObjectEditTransaction: Boolean;
procedure RollbackPageObjectEditTransaction;
property PageObjectEditTransactionStatus: TPdfPageObjectEditTransactionStatus;

Description

BeginPageObjectEditTransaction capture un instantané reproductible borné du document actif et lie la transaction à la page courante

Les mutations d’objets de page — insertion, suppression, transformation, propriété, marque de contenu, objet d’annotation et apparence d’annotation — restent des opérations PDFium natives tandis que la génération de contenu est différée

CommitPageObjectEditTransaction appelle FPDFPage_GenerateContent une seule fois lorsqu’au moins une mutation a réussi et renvoie True, ou renvoie False sans génération pour une transaction sans effet

RollbackPageObjectEditTransaction restaure l’instantané de référence validé sans sérialiser les mutations différées

Statut

TPdfPageObjectEditTransactionStatus rapporte Active, Dirty, le PageNumber à base 1, le MutationCount réussi et ContentGenerationCount

Les compteurs finaux de mutations et de générations restent disponibles après la validation à des fins de diagnostic

Comportement en cas d’échec

Example

Pdf.BeginPageObjectEditTransaction;
try
  Pdf.TransformPageObject(0, Matrix);
  Pdf.SetPageObjectMarkParam(0, 0, Param);
  Pdf.CommitPageObjectEditTransaction;
except
  if Pdf.PageObjectEditTransactionStatus.Active then
    Pdf.RollbackPageObjectEditTransaction;
  raise;
end;

See Also

BeginEditTransaction, UpdatePageObject, AddPageObjectMark, RefreshAppearance