function IsAnnotationObjectSubtypeSupported(Subtype: TPdfAnnotationSubtype): Boolean;
| Subtype | TPdfAnnotationSubtype. Subtipo que se va a probar: 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 cuando el módulo admite ese subtipo para el manejo a nivel de objeto |
Compañera a nivel de objeto de IsAnnotationSubtypeSupported. Mientras que esa llamada informa de si un subtipo puede crearse con CreateAnnotation, esta pregunta al módulo si admite el manejo de objetos de ese subtipo — la consulta que gobierna las API de objetos de anotación como AnnotationObjectInfo y AnnotationObjectCount, que leen y editan los objetos de página dibujados dentro de una anotación
La respuesta varía entre compilaciones de PDFium. Probar primero permite a una aplicación habilitar o deshabilitar por adelantado una función de edición a nivel de objeto en lugar de fallar más tarde en la llamada real
Cuando la compilación de PDFium cargada no exporta la consulta nativa (FPDFAnnot_IsObjectSupportedSubtype) el resultado es False, lo que mantiene al llamador del lado conservador
if Pdf1.IsAnnotationObjectSubtypeSupported(anStamp) then
BtnEditStampObjects.Enabled := True
else
// no object-level stamp editing on this PDFium build
BtnEditStampObjects.Enabled := False;