PDFium Delphi Component Docs

IsAnnotationObjectSubtypeSupported メソッド

コンポーネント: TPdf  ·  ユニット: PDFium
読み込まれた PDFium モジュールが、指定された注釈サブタイプを注釈オブジェクトとして処理できるかを問い合わせます

構文

function IsAnnotationObjectSubtypeSupported(Subtype: TPdfAnnotationSubtype): Boolean;

SubtypeTPdfAnnotationSubtype。テストするサブタイプです。anUnknownanTextanLinkanFreeTextanLineanSquareanCircleanPolygonanPolyLineanHighlightanUnderlineanSquigglyanStrikeoutanStampanCaretanInkanPopupanFileAttachmentanSoundanMovieanWidgetanScreenanPrinterMarkanTrapNetanWaterMarkanThreedanRichMediaanXfaWidgetanRedact
ResultBoolean。モジュールがそのサブタイプのオブジェクトレベル処理をサポートする場合に True です

説明

IsAnnotationSubtypeSupported のオブジェクトレベルの姉妹呼び出しです。あちらがサブタイプを CreateAnnotation で作成できるかを報告するのに対し、こちらはモジュールがそのサブタイプのオブジェクトの処理をサポートするかを問い合わせます。AnnotationObjectInfoAnnotationObjectCount のような、注釈の内側に描かれたページオブジェクトを読み取り・編集する注釈オブジェクト API の可否を決める問い合わせです

答えは 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;

関連項目

IsAnnotationSubtypeSupported, AnnotationObjectInfo, AnnotationObjectCount, CreateAnnotation