procedure BeginPageObjectEditTransaction(AllowSignedDocument: Boolean = False);
function CommitPageObjectEditTransaction: Boolean;
procedure RollbackPageObjectEditTransaction;
property PageObjectEditTransactionStatus: TPdfPageObjectEditTransactionStatus;
BeginPageObjectEditTransaction 擷取作用中文件的有界可重現快照,並把交易繫結到目前頁面
頁面物件的插入、移除、變換、屬性、內容標記、註解物件與註解外觀變更仍是原生 PDFium 作業,而內容產生則被延後
CommitPageObjectEditTransaction 在至少一個變更成功時呼叫一次 FPDFPage_GenerateContent 並傳回 True;對無作業的交易則不產生內容並傳回 False
RollbackPageObjectEditTransaction 會還原已驗證的基準快照,而不序列化延後的變更
TPdfPageObjectEditTransactionStatus 回報 Active、Dirty、以 1 為基底的 PageNumber、成功的 MutationCount 與 ContentGenerationCount
最終的變更與產生計數器在認可後仍保留,供診斷使用
AllowSignedDocument 授權TPdfEditJournalOptions.MaxSnapshotBytesPdf.BeginPageObjectEditTransaction;
try
Pdf.TransformPageObject(0, Matrix);
Pdf.SetPageObjectMarkParam(0, 0, Param);
Pdf.CommitPageObjectEditTransaction;
except
if Pdf.PageObjectEditTransactionStatus.Active then
Pdf.RollbackPageObjectEditTransaction;
raise;
end;