PDFium Component Docs

FormFieldInfoAt vlastnosť

Component: TPdf  ·  Unit: PDFium
Záznam formulárového poľa pre widget umiestnený na zadanej súradnici strany

Syntax

property FormFieldInfoAt[X, Y: Single]: TPdfFormFieldInfo; // read only

Description

FormFieldInfoAt vykoná hit-test na aktuálne aktívnej strane a vráti záznam TPdfFormFieldInfo popisujúci anotáciu ovládacieho prvku na (X, Y). Súradnice sú v používateľskom priestore PDF, s počiatkom v ľavom dolnom rohu strany a jednotkami vyjadrenými v bodoch (1/72 palca). Záznam zrkadlí to, čo vracia FormFieldInfo[Index] — typ poľa (fiTextField, fiCheckBox, …), názov poľa, alternatívny názov, príznaky, štítky volieb, stav zaškrtnutia, hodnota exportu a veľkosť písma.

Keď súradnica nespadne dovnútra žiadneho obdĺžnika ovládacieho prvku, FormFieldInfoAt vráti predvolene inicializovaný TPdfFormFieldInfoFieldType = fiUnknown a prázdne reťazce všade. Pre lacnú áno/nie sondu pred získaním úplného záznamu použite HasFormFieldAt[X, Y] alebo jednoducho skontrolujte vrátené FieldType.

Vyhľadávanie je O(n) nad ovládacími prvkami strany a dodatočne dekóduje metadáta poľa Unicode, takže je ťažšie než HasFormFieldAt. V obsluhe pohybu myšou najprv skontrolujte HasFormFieldAt; FormFieldInfoAt volajte iba pri kliknutí alebo vstupe hover. Súradnice z pozície myši prejdú najprv cez TPdfView.PointToPage na preklad pixelov zariadenia do jednotiek strany.

Remarks

Example

procedure TForm1.PdfView1Click(Sender: TObject);
var Info: TPdfFormFieldInfo;
  PageX, PageY: Double;
begin
  PdfView1.PointToPage(Mouse.CursorPos.X, Mouse.CursorPos.Y, PageX, PageY);
  Info := Pdf1.FormFieldInfoAt[PageX, PageY];
  if Info.FieldType <> fiUnknown then
    ShowMessage(Info.Name);
end;

See Also

HasFormFieldAt, FormFieldInfo, FormFieldAt, FormFieldCount