function IsAnnotationObjectSubtypeSupported(Subtype: TPdfAnnotationSubtype): Boolean;
| Subtype | TPdfAnnotationSubtype. Subtype yang akan diuji: anUnknown, anText, anLink, anFreeText, anLine, anSquare, anCircle, anPolygon, anPolyLine, anHighlight, anUnderline, anSquiggly, anStrikeout, anStamp, anCaret, anInk, anPopup, anFileAttachment, anSound, anMovie, anWidget, anScreen, anPrinterMark, anTrapNet, anWaterMark, anThreed, anRichMedia, anXfaWidget, anRedact |
| Result | Boolean. True ketika modul mendukung subtype tersebut untuk penanganan level objek |
Pasangan level objek dari IsAnnotationSubtypeSupported. Jika panggilan itu melaporkan apakah sebuah subtype dapat dibuat oleh CreateAnnotation, yang ini menanyakan ke modul apakah ia mendukung penanganan objek dengan subtype tersebut — kueri yang mengatur API annotation-object seperti AnnotationObjectInfo dan AnnotationObjectCount, yang membaca dan menyunting page object yang digambar di dalam sebuah anotasi
Jawabannya berbeda antar build PDFium. Menguji lebih dulu memungkinkan aplikasi mengaktifkan atau menonaktifkan fitur penyuntingan level objek sejak awal alih-alih gagal belakangan pada panggilan sesungguhnya
Ketika build PDFium yang dimuat tidak mengekspor kueri native tersebut (FPDFAnnot_IsObjectSupportedSubtype) hasilnya False, yang membuat pemanggil berada di sisi konservatif
if Pdf1.IsAnnotationObjectSubtypeSupported(anStamp) then
BtnEditStampObjects.Enabled := True
else
// no object-level stamp editing on this PDFium build
BtnEditStampObjects.Enabled := False;