property FormFieldCount: Integer; // read only
FormFieldCount retourneert het aantal AcroForm-veldwidgetannotaties op de momenteel actieve pagina. Elke vermelding komt overeen met één widgetannotatie (subtype
/Widget met een veldtype /FT) — tekstinvoer, selectievakje,
keuzerondje, lijst, combinatielijst, drukknop of handtekeningveld (PDF 1.7-specificatie,
sectie 12.7).
De waarde is 0 wanneer Active False is, wanneer
het document geen AcroForm is (FormType = ftNone) of wanneer de pagina geen
interactieve widgets heeft. Het is een meting per pagina; pagina's kunnen widgets bevatten die
behoren tot hetzelfde logische veld dat elders in de documentstructuur is gedefinieerd — PDF staat
toe dat één veld meerdere widgetplaatsingen heeft (bijv. een handtekening zichtbaar op de omslag
en de laatste pagina).
Gebruik FormFieldInfo[Index] met indices van 0 tot
FormFieldCount - 1 om een TPdfFormFieldInfo-record te verkrijgen:
veldtype, naam, alternatieve naam, vlaggen, optielabels, huidige waarde, exportwaarde,
aangevinkte status en lettertypegrootte. Om een veld via hit-testing op een paginacoördinaat te verkrijgen
gebruikt u in plaats daarvan FormFieldAt[X, Y] of FormFieldInfoAt[X, Y].
FormType = ftXfaFull) dragen hun interactieve
structuur buiten de AcroForm-structuur; FormFieldCount kan nog steeds door XFA gegenereerde widgets
rapporteren, maar XFA-rendering zelf valt buiten het bereik van PDFium Delphi Component.AnnotationCount overlappen omdat widgets een
subset van annotaties zijn. Gebruik deze eigenschap wanneer u alleen velden wilt.SetFormField maakt indices ongeldig.
Herlees FormFieldCount na elke mutatie.
var I: Integer;
var Info: TPdfFormFieldInfo;
for I := 0 to Pdf1.FormFieldCount - 1 do
begin
Info := Pdf1.FormFieldInfo[I];
Memo1.Lines.Add(Format('%s = %s', [Info.Name, Info.ExportValue]));
end;