procedure BeginPageObjectEditTransaction(AllowSignedDocument: Boolean = False);
function CommitPageObjectEditTransaction: Boolean;
procedure RollbackPageObjectEditTransaction;
property PageObjectEditTransactionStatus: TPdfPageObjectEditTransactionStatus;
BeginPageObjectEditTransaction zachytí ohraničený reprodukovatelný snapshot aktivního dokumentu a naváže transakci na aktuální stránku
Mutace page objektů — vložení, odstranění, transformace, vlastnosti, content mark, anotační objekty a vzhled anotací — zůstávají nativními operacemi PDFium, zatímco generování obsahu se odkládá
CommitPageObjectEditTransaction zavolá FPDFPage_GenerateContent jednou, když alespoň jedna mutace uspěla, a vrátí True, nebo vrátí False bez generování u transakce bez žádné operace
RollbackPageObjectEditTransaction obnoví validovaný základní snapshot bez serializace odložených mutací
TPdfPageObjectEditTransactionStatus hlásí Active, Dirty, PageNumber indexované od jedničky, úspěšné MutationCount a ContentGenerationCount
Konečná počítadla mutací a generování zůstanou po commitu dostupná pro diagnostiku
AllowSignedDocumentTPdfEditJournalOptions.MaxSnapshotBytesPdf.BeginPageObjectEditTransaction;
try
Pdf.TransformPageObject(0, Matrix);
Pdf.SetPageObjectMarkParam(0, 0, Param);
Pdf.CommitPageObjectEditTransaction;
except
if Pdf.PageObjectEditTransactionStatus.Active then
Pdf.RollbackPageObjectEditTransaction;
raise;
end;