property TextPage: FPDF_TEXTPAGE; // read only
TextPage відкриває сирий дескриптор PDFium FPDF_TEXTPAGE,
пов’язаний із поточною завантаженою сторінкою. Дескриптор створюється ліниво,
коли сторінка стає активною, і підтримується живим протягом усього часу
життя цього прив’язування сторінки; він дає прямий доступ до API
витягування тексту PDFium (FPDFText_*) для викликувачів, яким
потрібні операції, не відкриті властивостями TPdf вищого рівня —
наприклад, текстові проходи рівня гліфів, дані кернінгу, власна семантика
пошуку або прямі відповідності індекс символу — обмежувальна рамка
Дескриптор чинний лише поки Active є True і вибрано
придатну сторінку. Перемикання сторінок (присвоєння нового PageNumber
або виклик ReloadPage) знищує попередній дескриптор і створює
новий, тож не зберігайте дескриптор між змінами сторінок. Компонент володіє
дескриптором і звільнить його під час знесення сторінки —
не викликайте на ньому FPDFText_ClosePage самостійно
Це властивість для досвідчених. Більшість викликувачів мають віддавати
перевагу обгорткам вищого рівня CharacterCount,
Character[I], CharacterRectangle[I],
Find / FindNext — вони вже керують життєвим
циклом FPDF_TEXTPAGE внутрішньо. Опускайтеся до сирового
дескриптора лише коли потрібні API PDFium, яких PDFium Delphi Component
ще не відкрив
nil, коли жодна сторінка не активна. Завжди перевіряйте
дескриптор перед передаванням його до PDFiumFPDFText_FindStart; цей пошуковий контекст володієється
незалежно через властивість Find
var TP: FPDF_TEXTPAGE;
TP := Pdf1.TextPage;
if Assigned(TP) then
ShowMessage(Format('PDFium reports %d chars',
[FPDFText_CountChars(TP)]));