function IsAnnotationObjectSubtypeSupported(Subtype: TPdfAnnotationSubtype): Boolean;
| Subtype | TPdfAnnotationSubtype. סוג ההערה לבדיקה: 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 כאשר המודול תומך בסוג זה לטיפול ברמת האובייקט |
המקבילה ברמת האובייקט של IsAnnotationSubtypeSupported. כאשר הקריאה ההיא מדווחת האם ניתן ליצור סוג הערה באמצעות CreateAnnotation, קריאה זו שואלת את המודול האם הוא תומך בטיפול באובייקטים מאותו סוג — השאילתה שקובעת את ממשקי ה-API של אובייקטי ההערות כמו AnnotationObjectInfo ו-AnnotationObjectCount, שקוראים ועורכים את אובייקטי העמוד המצוירים בתוך הערה
התשובה משתנה בין גרסאות של PDFium. בדיקה מראש מאפשרת ליישום להפעיל או לנטרל יכולת עריכה ברמת אובייקט כבר בהתחלה, במקום להיכשל מאוחר יותר בקריאה בפועל
כאשר גרסת ה-PDFium הטעונה אינה מייצאת את השאילתה המקורית (FPDFAnnot_IsObjectSupportedSubtype) התוצאה היא False, מה שמשאיר את הקורא בצד השמרני
if Pdf1.IsAnnotationObjectSubtypeSupported(anStamp) then
BtnEditStampObjects.Enabled := True
else
// no object-level stamp editing on this PDFium build
BtnEditStampObjects.Enabled := False;