property FormFieldCount: Integer; // read only
FormFieldCount, şu anda etkin olan sayfadaki AcroForm alan gereci ek açıklamalarının sayısını döndürür. Her giriş bir gereç ek açıklamasına karşılık gelir (alt tür /Widget ve bir /FT alan türü ile) — metin girişi, onay kutusu, radyo düğmesi, liste kutusu, açılan kutu, basma düğmesi veya imza alanı (PDF 1.7 belirtimi, 12.7. bölüm).
Bu değer; Active değeri False olduğunda, belge bir AcroForm değilse (FormType = ftNone) veya sayfada etkileşimli gereç yoksa 0 olur. Bu, sayfa başına bir ölçümdür; sayfalar, belge ağacının başka bir yerinde tanımlanan aynı mantıksal alana ait gereçler içerebilir — PDF, bir alanın birden çok gereç yerleşimine sahip olmasına izin verir (ör. kapakta ve son sayfada görünen bir imza).
Bir TPdfFormFieldInfo kaydı (alan türü, ad, alternatif ad, bayraklar, seçenek etiketleri, geçerli değer, dışa aktarma değeri, işaretli durum ve yazı tipi boyutu) elde etmek için 0'dan FormFieldCount - 1'e kadar dizinlerle FormFieldInfo[Index] kullanın. Bir sayfa koordinatını isabet testiyle almak için bunun yerine FormFieldAt[X, Y] veya FormFieldInfoAt[X, Y] kullanın.
FormType = ftXfaFull) etkileşimli yapılarını AcroForm ağacının dışında taşır; FormFieldCount yine de XFA tarafından üretilen gereçleri raporlayabilir, ancak XFA işlemenin kendisi PDFium Delphi Component'ın kapsamı dışındadır.AnnotationCount örtüşür çünkü gereçler ek açıklamaların bir alt kümesidir. Yalnızca alanları istediğinizde bu özelliği kullanın.SetFormField yoluyla gereç eklemek / kaldırmak dizinleri geçersiz kılar; her değişiklikten sonra FormFieldCount değerini yeniden okuyun.
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;