TPdfLifecycleActionPolicy = (lapDisabled, lapManual, lapAutomatic);
TPdfDocumentLifecycleAction = (dlaJavaScript, dlaOpen, dlaWillClose, dlaWillSave, dlaDidSave, dlaWillPrint, dlaDidPrint);
TPdfPageLifecycleAction = (plaOpen, plaClose);
property LifecycleActionPolicy: TPdfLifecycleActionPolicy; // default lapAutomatic
lapDisabled blockerar både automatisk och explicit körning av livscykelåtgärder
lapManual undertrycker automatiska åtgärder medan de två explicita körningsmetoderna förblir tillgängliga
lapAutomatic behåller kompatibelt automatiskt dokumentskript, dokumentöppning och -stängning samt sidöppning och -stängning, medan explicit körning fortfarande tillåts
Automatiskt läge omsluter inte spar- eller utskriftsoperationer, eftersom interna ögonblicksbilder och konverteringssparanden inte oväntat får köra dokumentskript; anropa den explicita dokumentmetoden vid värddrivna arbetsflödesgränser
function ExecuteDocumentLifecycleAction(Action: TPdfDocumentLifecycleAction; out ErrorMessage: string): Boolean;
dlaJavaScript kör dokumentnivå-JavaScript-åtgärderna i namnträdet och dlaOpen kör katalogens öppningsåtgärd
dlaWillClose, dlaWillSave, dlaDidSave, dlaWillPrint och dlaDidPrint skickar vidare motsvarande ytterligare dokumentåtgärd
Metoden returnerar False med ett icke-tomt ErrorMessage när policyn blockerar körning, formulärfyllnadsmiljön saknas, eller när en återanropning kastar ett undantag
function ExecutePageLifecycleAction(PageNumber: Integer; Action: TPdfPageLifecycleAction; out ErrorMessage: string): Boolean;
PageNumber är ett-baserad och måste identifiera en sida i det aktiva dokumentet
Den aktuella sidan återanvänder sitt inlästa inbyggda handtag; en annan sida öppnas tillfälligt, registreras i formulärmiljön, skickas, avregistreras och stängs utan att TPdf.PageNumber ändras
Fel vid inläsning, registrering, åtgärd, städning och stängning isoleras i returvärdet och ErrorMessage
var
ErrorMessage: string;
begin
Pdf.LifecycleActionPolicy := lapManual;
if not Pdf.ExecuteDocumentLifecycleAction(dlaWillSave, ErrorMessage) then
raise Exception.Create(ErrorMessage);
try
Pdf.SaveAs(TargetFileName);
finally
Pdf.ExecuteDocumentLifecycleAction(dlaDidSave, ErrorMessage);
end;
end;
Livscykelåtgärder kan anropa dokumentskript, namngivna åtgärder, URI-återanropningar och andra värdtjänster konfigurerade på TPdf
Använd lapDisabled för otillförlitliga dokument som aldrig får köra åtgärder, eller lapManual när programmet behöver en explicit godkännandegräns