PDFium Delphi Component Docs

FormFieldInfo Özellik

Component: TPdf  ·  Unit: PDFium
Etkin sayfada belirli bir indeksdeki form alanını tanımlayan tam kayıt

Syntax

property FormFieldInfo[Index: Integer]: TPdfFormFieldInfo; // read only

Description

FormFieldInfo, hâlihazırda etkin sayfada sıfır tabanlı Index'teki form alanı widget annotation'ı için anlık görüntü niteliğinde bir TPdfFormFieldInfo kaydı döndürür. Kayıt, altta yatan FPDF_ANNOTATION tanıtıcısını kırmak zorunda kalmadan bir AcroForm alan widget'ının güçlü türlü görünümünü sunar. PDF 1.7 spec section 12.7, altta yatan alan türlerini ve flag'lerini tanımlar

The record carries the field Name (fully qualified path through any parent field group, e.g. "order.shipto.address"), the AlternateName used for accessible tooltips, the FieldType enumeration (fiPushButton, fiCheckBox, fiRadioButton, fiTextField, fiListBox, fiComboBox, fiSignature, or fiUnknown), the bit-set Flags (ffReadOnly, ffRequired, ffNoExport, …), FormData dışa aktarımına yazıldığı hâliyle ExportValue, boolean alanlar için Checked flag'i, işlemede kullanılan FontSize ve combo ve list box'ların kullandığı OptionLabels / OptionSelected seçenek kümesi dizileri. Bir gruba ait radio button widget'ları ayrıca GroupCount ve GroupIndex'i doldurur

Geçerli indeksler 0 .. FormFieldCount - 1'dir. Kayıt bir değer türüdür; alanlarını değiştirmek dokümana geri yazmaz. Bir alanın değerini değiştirmek için FormField[Index] üzerinden atayın; flag bit maskesini değiştirmek için SetFormFieldFlagsAt çağırın. Okuma tembeldir — PDFium Unicode alan adlarını, seçenek etiketlerini ve export value'ları istek anında çözer — dolayısıyla birçok alanı birden çok kez gezerken sonucu önbelleğe alın

Parameters

IndexGeçerli sayfada sıfır tabanlı widget indeksi (0 .. FormFieldCount - 1)

Remarks

Example

var I, J: Integer;
var Info: TPdfFormFieldInfo;
for I := 0 to Pdf1.FormFieldCount - 1 do
begin
  Info := Pdf1.FormFieldInfo[I];
  Memo1.Lines.Add(Format('%s [%d] export=%s checked=%s',
    [Info.Name, Ord(Info.FieldType), Info.ExportValue, BoolToStr(Info.Checked, True)]));
  for J := 0 to High(Info.OptionLabels) do
    Memo1.Lines.Add(' ' + Info.OptionLabels[J]);
end;

See Also

FormField, FormFieldCount, FormFieldInfoAt, FormFieldAt, FormType