|
RemoveFormField elimina un campo modulo caricato dall'albero campi AcroForm e rimuove dalle pagine le annotazioni widget corrispondenti. FlattenFormFields dipinge i valori visibili correnti dei campi caricati o in costruzione nel contenuto pagina statico, quindi rimuove la voce catalogo AcroForm e le annotazioni widget, cosi il PDF salvato non espone piu campi interattivi. Restituisce il numero di campi appiattiti, oppure zero quando non erano presenti campi modulo
Usare SaveLoadedDocument per scrivere una copia completamente salvata del grafo oggetti caricato dopo modifiche dirette ai campi. Per workflow append-only, come i PDF firmati, caricare con BeginIncrementalUpdate, modificare i campi e poi chiamare SaveIncrementalUpdate
Example
PDF.LoadFromFile('InputForm.pdf');
for I := 0 to PDF.GetFormFieldCount - 1 do
Writeln(PDF.GetFormFieldName(I), ' = ', PDF.GetFormFieldValue(I));
for I := 0 to PDF.GetFormFieldOptionCount('Plan') - 1 do
Writeln('Plan option ', I, ': ', PDF.GetFormFieldOptionValue('Plan', I));
Writeln('Customer description: ', PDF.GetFormFieldDescription('CustomerName'));
PDF.SetFormFieldValue('CustomerName', 'Bob');
PDF.SetFormFieldReadOnly('CustomerName', True);
PDF.RenameFormField('CustomerName', 'ClientName');
PDF.RemoveFormField('Approved');
PDF.SaveLoadedDocument('UpdatedForm.pdf');
PDF.LoadFromFile('UpdatedForm.pdf');
if PDF.HasFormFields then
Writeln('Plan exists: ', PDF.FormFieldExists('Plan'));
FlattenedCount := PDF.FlattenFormFields;
PDF.SaveLoadedDocument('FlattenedForm.pdf');
Vedi anche
|