PDFium Delphi Component Docs

HasFormFieldAt svojstvo

Komponenta: TPdf  ·  Jedinica: PDFium
Test pogotka koji vraća True kada widget polja obrasca pokriva zadanu koordinatu stranice

Sintaksa

property HasFormFieldAt[X, Y: Single]: Boolean; // read only

Opis

HasFormFieldAt izvodi test pogotka na trenutačno aktivnoj stranici: vraća True kada zadana koordinata (X, Y) pada unutar pravokutnika bilo koje widget anotacije. Koordinate su u PDF korisničkom prostoru — isti koordinatni sustav kao PageWidth / PageHeight, s ishodištem u donjem lijevom kutu, X raste prema desno, Y prema gore, jedinice u točkama (1/72 inča)

Svojstvo vraća False kada je Active False, kada dokument nema AcroForm widgete ili kada zadana koordinata promaši svaki pravokutnik widgeta. Riječ je o omotaču konstantnog vremena oko PDFium FPDFPage_HasFormFieldAtPoint — idealan za mouse-move / hover povratnu informaciju u prikazniku gdje se vrijednost dohvaća mnogo puta u sekundi

Test pogotka poštuje samo pravokutnik widgeta — ne granice appearancea. Push gumbi ili checkboxi čiji je vidljivi glif manji od pravokutnika widgeta i dalje prijavljuju True za cijeli pravokutnik. Kombinirajte s FormFieldInfoAt[X, Y] za dohvat zapisa pogodenog polja nakon što test pogotka potvrdi da je kursor iznad polja; taj uzorak izbjegava teži dohvat informacija na svakom mouse-move događaju

Napomene

Primjer

procedure TForm1.PdfView1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
var PageX, PageY: Double;
begin
  PdfView1.DeviceToPage(X, Y, PageX, PageY);
  if Pdf1.HasFormFieldAt[PageX, PageY] then
    PdfView1.Cursor := crHandPoint
  else
    PdfView1.Cursor := crDefault;
end;

Vidi također

FormFieldAt, FormFieldInfoAt, FormFieldCount, TPdfView.DeviceToPage