PDFium Delphi Component Docs

Redigeringstransaktioner för sidobjekt

Component: TPdf  ·  Unit: PDFium
Samlar nativa sidobjektsmutationer i en enda atomisk, sidavgränsad operation

Syntax

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

Description

BeginPageObjectEditTransaction fångar en avgränsad, reproducerbar snapshot av det aktiva dokumentet och binder transaktionen till den aktuella sidan

Mutationer av typen infoga, ta bort, transformera, egenskapsändring, content-mark, annoteringsobjekt och annoteringsutseende förblir nativa PDFium-operationer medan innehållsgenereringen skjuts upp

CommitPageObjectEditTransaction anropar FPDFPage_GenerateContent en gång när minst en mutation lyckades och returnerar True, eller returnerar False utan generering för en transaktion utan ändringar

RollbackPageObjectEditTransaction återställer den validerade baslinje-snapshoten utan att serialisera de uppskjutna mutationerna

Status

TPdfPageObjectEditTransactionStatus rapporterar Active, Dirty, det ettbaserade PageNumber, lyckade MutationCount och ContentGenerationCount

De slutgiltiga räknarna för mutationer och genereringar finns kvar efter commit för diagnostik

Failure behaviour

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