PDFium Delphi Component Docs

PageObjectEditTransactionStatus svojstvo

Component: TPdf  ·  Unit: PDFium
Prijavljuje da li je transakcija izmena objekata stranice aktivna i koliko je napredovala

Syntax

property PageObjectEditTransactionStatus: TPdfPageObjectEditTransactionStatus; // read only

 

type TPdfPageObjectEditTransactionStatus = record
  Active: Boolean;
  Dirty: Boolean;
  PageNumber: Integer;
  MutationCount: Integer;
  ContentGenerationCount: Integer;
end;

ActiveTrue između BeginPageObjectEditTransaction i odgovarajuće potvrde ili vraćanja
DirtyTrue kada je bar jedna mutacija izvršena unutar transakcije
PageNumberStranica, čiji broj počinje od 1, na koju je transakcija bila vezana pri početku
MutationCountZabeleženi uspešni pozivi UpdatePage unutar transakcije
ContentGenerationCountGenerisanja sadržaja izvršena pri potvrdi transakcija sa izmenama

Description

Transakcija izmena objekata stranice odlaže izvorno generisanje sadržaja tako da se mutacije ubacivanja, uklanjanja, transformacije, svojstava, content-mark oznaka i izgleda anotacija primene kao jedna atomska operacija obuhvaćena stranicom. Ovo svojstvo izlaže njeno trenutno stanje za provere i dijagnostiku

MutationCount napreduje sa svakom uspelom odloženom mutacijom, a svaka takva mutacija takođe poništava keševe stranice tako da nijedan zastareli render, snimak ili thumbnail ne preživi izmenu

Potvrda transakcije sa izmenama jednom regeneriše sadržaj stranice i povećava ContentGenerationCount. Potvrda transakcije bez izmena ili vraćanje na početno stanje obnavlja bazu bez generisanja

Remarks

Potvrda i vraćanje brišu Active i Dirty, ali ostavljaju PageNumber i oba brojača kao konačnu dijagnostiku dok sledeća transakcija ne počne i ne resetuje ih

Van transakcije svako polje drži svoju podrazumevanu vrednost, tako da je Active = False pouzdana provera mirovanja

Status pokriva samo transakcije objekata stranice; transakcije na nivou dokumenta otvorene sa BeginEditTransaction prijavljuje dnevnik izmena

Example

Pdf.BeginPageObjectEditTransaction;
try
  Pdf.TransformPageObject(0, Matrix);
  Status := Pdf.PageObjectEditTransactionStatus;
  LogTransactionProgress(Status.MutationCount, Status.Dirty);
  Pdf.CommitPageObjectEditTransaction;
except
  if Pdf.PageObjectEditTransactionStatus.Active then
    Pdf.RollbackPageObjectEditTransaction;
  raise;
end;

See Also

PageObjectEditTransaction, BeginEditTransaction, CommitEditTransaction, RollbackEditTransaction, UpdatePageObject