COSInteger
COSIntegerは、Apache PDFBoxにおける基本的なクラスで、Carousel Object Structure(COS)モデル内の整数値を表現します。
COSIntegerは、Apache PDFBoxにおける基本的なクラスで、Carousel Object Structure(COS)モデル内の整数値を表現します。COSモデルは、 ( Citation: N.A., 2020 (N.A.). (2020). Document management — Portable document format — Part 2: PDF 2.0 . International Organization for Standardization Retrieved from https://www.iso.org/standard/75839.html ) で定義されているPDFファイル構造のPDFBox内部表現です。この低レベルクラスは、PDF文書で使用される基本オブジェクトタイプを反映するCOSパッケージの一部であり、Java開発者がPDFファイル内の整数値を読み取り、作成、操作することを可能にします。COSIntegerオブジェクトは、辞書の値、配列の要素、各種PDF操作のパラメータとして、PDF文書全体に現れます。
COSIntegerは、Apache PDFBoxのorg.apache.pdfbox.cosパッケージに含まれる、COSNumber抽象クラスを拡張したJavaクラスです。このクラスは、PDF仕様 ( Citation: N.A., 2020 (N.A.). (2020). Document management — Portable document format — Part 2: PDF 2.0 . International Organization for Standardization Retrieved from https://www.iso.org/standard/75839.html ) で定義されている整数値を具体的に扱います。仕様では、整数は特定の範囲内の整数として定義されています。小数値を扱うCOSFloatやテキストを扱うCOSStringとは異なり、COSIntegerはPDF構文に現れる整数のみを表現します。このクラスは、格納された整数値を様々なJava数値型(int、long、float、double)で取得するメソッドを提供し、PDFファイルへの書き込みを可能にするCOSオブジェクトインターフェースを実装しています。PDFBoxは、PDFファイルの解析時や、開発者がプログラムでPDFコンテンツを構築・変更する際に、COSIntegerを内部的に使用します。
Apache PDFBoxで作業する開発者にとって、COSIntegerの理解は、ページ寸法の変更、座標値の設定、フォントサイズの調整、色成分の操作など、低レベルのPDF操作タスクを実行する際に不可欠です。多くのPDF辞書エントリは整数値を期待します。例えば、ページ数、回転角度(0、90、180、270)、Tagged PDFの構造要素属性などです ( Citation: PDF Association, 2023 PDF Association(2023). Retrieved from https://pdfa.org/resource/tagged-pdf-best-practice-guide-syntax/ ) 。これらの値をプログラムで抽出または設定する際、開発者はJavaのプリミティブな整数型ではなく、COSIntegerオブジェクトを扱う必要があります。この理解により、型エラーを防ぎ、特にPDF構造ツリーの走査やコンテンツストリームの操作時に、PDFBoxのオブジェクトモデルとの適切な相互作用が可能になります。
COSIntegerは、Javaのlongプリミティブ型のラッパーとして機能し、整数値を内部的に格納し、必要に応じて値を他の数値型に変換するアクセサメソッドを提供します。PDFBoxがPDFファイルを解析する際、COSパーサーはPDF構文内の整数トークンを識別し、それらをメモリ内で表現するCOSIntegerオブジェクトをインスタンス化します。開発者は、静的ファクトリメソッドCOSInteger.get(long value)を使用してCOSIntegerインスタンスを作成できます。このメソッドは、頻繁に使用される値に対してオブジェクトプーリングを実装し、メモリ使用を最適化します。PDF辞書から整数を抽出するには、通常、COSDictionary.getInt(String key)などのメソッドを呼び出します。このメソッドは内部的にCOSIntegerを取得し、そのプリミティブ値を返します。PDFコンテンツを書き込む際、COSIntegerオブジェクトは自身をPDF整数構文にシリアル化します。このクラスは、整数の範囲と書式に関するPDF仕様の要件
(
Citation: N.A., 2020
(N.A.).
(2020).
Document management — Portable document format — Part 2: PDF 2.0
.
International Organization for Standardization
Retrieved from
https://www.iso.org/standard/75839.html
)
に準拠し、生成されたPDFが標準に準拠していることを保証します。
- COSBase – Apache PDFBoxにおけるすべてのCOSオブジェクトの抽象基底クラス
- COSNumber – COSIntegerとCOSFloatを含む数値COS型の抽象親クラス
- COSDictionary – COSInteger値をしばしば含むPDF辞書オブジェクトを表すCOSクラス
- COSArray – COSInteger要素を含む可能性のあるPDF配列を表すCOSクラス
- PDDocument – 文書表現のために内部的にCOSオブジェクトを使用する高レベルPDFBoxクラス
- (N.A.) (2020)
- (N.A.). (2020). 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)
- PDF Association(2023). Retrieved from https://pdfa.org/resource/tagged-pdf-best-practice-guide-syntax/
