PDFium Delphi Component Docs

FormFieldInfoAt-ominaisuus

Component: TPdf  ·  Unit: PDFium
Annetun sivukoordinaatin kohdalla olevan widgetin lomakekenttätietue

Syntax

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

Description

FormFieldInfoAt suorittaa osumatestauksen tällä hetkellä aktiivisella sivulla ja palauttaa TPdfFormFieldInfo-tietueen, joka kuvaa pisteen (X, Y) kohdalla olevaa widgettimerkintää. Koordinaatit ovat PDF-käyttäjäavaruudessa, origo sivun vasemmassa alakulmassa ja yksikköinä pisteet (1/72 tuumaa). Tietue peilaa sitä, mitä FormFieldInfo[Index] palauttaa — kenttätyyppi (fiTextField, fiCheckBox, …), kentän nimi, vaihtoehtoinen nimi, liput, vaihtoehtojen nimikkeet, valittu tila, vientiarvo ja fonttikoko

Kun koordinaatti ei osu minkään widget-suorakulman sisälle, FormFieldInfoAt palauttaa oletusalustetun TPdfFormFieldInfo-tietueen — FieldType = fiUnknown ja tyhjät merkkijonot kaikkialla. Käytä jäsentä HasFormFieldAt[X, Y] halvan kyllä/ei-tutkinnan tekemiseen ennen koko tietueen noutamista, tai tarkista yksinkertaisesti palautettu FieldType-arvo

Haku on O(n) sivun widgetien yli ja dekoodaa lisäksi Unicode-kenttien metatiedot, joten se on raskaampi kuin HasFormFieldAt. Hiiren liikkeen käsittelijässä tarkista ensin HasFormFieldAt; kutsu FormFieldInfoAt vasta napsautuksessa tai leijunnan alussa. Hiirikohdasta saadut koordinaatit ajetaan ensin jäsenen TPdfView.PointToPage kautta kääntämään laitepikselit sivuyksiköiksi

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