Skip to main content
Interwork Corporation
IDR Solutions Product Support Portal
PDF開発用語集 モードの切替 ダーク/ライト/自動 モードの切替 ダーク/ライト/自動 モードの切替 ダーク/ライト/自動

COSBoolean

COSBooleanは、Apache PDFBoxにおける低レベルのクラスで、Carousel Object Structure(COS)モデル内でブール値を表現します。

キーワード: cosboolean, COSBoolean

概要

COSBooleanは、Apache PDFBoxにおける低レベルのクラスで、Carousel Object Structure(COS)モデル内でブール値を表現します。COSフレームワークの一部として、COSBooleanは ( Citation: N.A., (N.A.). (). Document management — Portable document format — Part 2: PDF 2.0 International Organization for Standardization Retrieved from https://www.iso.org/standard/75839.html ) で定義されているPDFのオブジェクト構造の基盤を形成するプリミティブなブールオブジェクト(truefalse)への直接アクセスを提供します。このクラスはJavaのブール値のラッパーとして機能し、PDFBoxがPDF文書を最も基本的なレベルで操作できるようにします。

定義

COSBooleanは、Apache PDFBoxのCOS(Carousel Object Structure)モデルにおけるいくつかのプリミティブオブジェクトタイプの1つで、PDF仕様 ( Citation: N.A., (N.A.). (). Document management — Portable document format — Part 2: PDF 2.0 International Organization for Standardization Retrieved from https://www.iso.org/standard/75839.html ) で定義されている低レベルのオブジェクト構造を反映しています。複雑な文書要素を表現する高レベルのPDFBoxクラスとは異なり、COSBooleanは2つのブール値(truefalse)のみを扱います。このクラスはシングルトンパターンを実装しており、これらの値を効率的に表現するための2つの静的インスタンス(COSBoolean.TRUECOSBoolean.FALSE)を提供します。この設計により、不要なオブジェクト生成を防ぎ、参照の等価性を使用してブール値の比較を実行できるようにします。COSBooleanは抽象クラスCOSBaseを拡張しており、PDFBoxオブジェクト階層内のCOSName、COSIntegerCOSStringCOSDictionary、COSArrayなどの他のCOSオブジェクトと互換性があります。

重要性

Apache PDFBoxを使用する開発者にとって、COSBooleanはPDF文書を構造レベルで読み書きする際に不可欠です。ブール値はPDF文書全体に現れ、フラグの制御、機能の有効化または無効化、辞書内のプロパティの設定などを行います。例えば、フォームフィールドが読み取り専用かどうか、ページをビューアに表示するかどうか、Tagged PDF ( Citation: , (). Retrieved from https://pdfa.org/resource/tagged-pdf-best-practice-guide-syntax/ ) で特定のアクセシビリティ機能が有効かどうかなどを決定します。COSBooleanの理解は、開発者がPDF辞書を直接操作したり、文書プロパティを設定したり、ブールフラグで動作を制御するフォームフィールドやアノテーションを扱ったりする必要がある場合に特に重要です。COSBooleanオブジェクトを適切に処理しないと、開発者は不正なPDF構造を作成したり、文書プロパティを誤って読み取ったりするリスクがあります。

仕組み

COSBooleanは、Javaのプリミティブなboolean型のシンプルなラッパーとして動作しますが、PDFのシリアライゼーションとデシリアライゼーション用に設計された特定のメソッドを備えています。PDFを読み取る際、PDFBoxのパーサーは文書ストリーム内でブールキーワード(trueまたはfalse)を検出し、適切なCOSBooleanシングルトンインスタンスに変換します。PDFへの書き込み時には、COSBooleanオブジェクトのwritePDF()メソッドが対応するキーワードを文書ストリームに出力します。開発者は通常、キーを使用してCOSDictionaryオブジェクトの値を取得または設定する際にCOSBooleanと対話します。例えば、dictionary.getBoolean(COSName.KEY_NAME)を呼び出すと、COSBooleanオブジェクトを自動的にアンラップしてJavaのbooleanを返し、dictionary.setBoolean(COSName.KEY_NAME, true)はブール値をCOSBooleanでラップしてから保存します。この抽象化により、開発者はJavaの馴染みのあるboolean型を使用しながら、PDFBoxがCOSモデルとの間の変換を処理できます。シングルトンパターンにより、アプリケーションのライフサイクル全体でCOSBooleanインスタンスが2つのみ存在するため、メモリ効率が保証されます。

関連用語

  • COSBase – Apache PDFBoxにおけるすべてのCOSオブジェクトの抽象基底クラス
  • COSDictionary – フラグとしてブール値を含むことが多いPDF辞書オブジェクトを表すCOSクラス
  • COSName – PDF名前オブジェクト用のCOSクラスで、COSBoolean値と共に辞書のキーとして頻繁に使用される
  • Carousel Object Structure(COS) – PDFBoxがPDF文書構造を表現するために使用する低レベルのオブジェクトモデル
  • Tagged PDF – アクセシビリティ機能を制御するためにブールフラグを使用する構造マークアップを持つPDF文書

出典

(N.A.) (2020)
(N.A.). (). Document management — Portable document format — Part 2: PDF 2.0 International Organization for Standardization Retrieved from https://www.iso.org/standard/75839.html
PDF Association (2023)
(). Retrieved from https://pdfa.org/resource/tagged-pdf-best-practice-guide-syntax/