NextLine
NextLineは、Apache PDFBoxの標準APIクラスやコンポーネントではありません。
NextLineは、Apache PDFBoxの標準APIクラスやコンポーネントではありません。これは、カスタム実装、誤ったクラス名の参照、または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文書構造において、行の配置とテキストフローは、PDFBox内の専用Javaクラスではなく、コンテンツストリーム演算子によって制御されます。
Apache PDFBoxライブラリには、「NextLine」という名前のネイティブクラスは存在しません。PDFのテキスト配置は、通常、PDPageContentStreamのようなPDFBoxクラスを通じて管理されます。このクラスは、テキストの配置を制御するためのnewLine()やnewLineAtOffset()などのメソッドを提供します。これらのメソッドは、テキスト位置を次の行に移動させるPDFコンテンツストリーム演算子(Td、TD、T*)に対応します。特定のコンテキストで「NextLine」が存在する場合、それはカスタムユーティリティクラス、ラッパーメソッド、または類似した名前のメソッドとの混同である可能性があります。実際の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
)
では、名前付きオブジェクトではなく、コンテンツストリーム内のテキスト状態演算子とテキスト配置演算子を通じてテキスト配置を定義しています。
PDFBoxにおける正しいテキスト配置メカニズムを理解することは、プログラムによってPDF文書を作成または操作する開発者にとって非常に重要です。適切な行送りにより、テキストが正しくフォーマットされて表示され、文書構造の整合性が維持されます。これは、 ( Citation: N.A., 2014 (N.A.). (2014). Document management applications — Electronic document file format enhancement for accessibility — Part 1: Use of ISO 32000-1 (PDF/UA-1) . International Organization for Standardization Retrieved from https://www.iso.org/standard/64599.html ) で概説されているアクセシビリティ準拠において特に重要です。誤ったAPIや存在しないAPIへの参照を使用すると、コンパイルエラー、実行時エラー、およびPDF標準を満たさない文書が生成される可能性があります。Tagged PDFコンテンツを扱う開発者は、 ( Citation: PDF Association, 2023 PDF Association(2023). Retrieved from https://pdfa.org/resource/tagged-pdf-best-practice-guide-syntax/ ) に記載されているように、テキスト配置が論理的な読み順序を維持することを保証する必要があります。
Apache PDFBoxでは、テキストの行配置はPDPageContentStreamクラスを通じて実現されます。開発者が次の行に移動する必要がある場合、通常はcontentStream.newLine()を呼び出します。これにより、現在のleading値だけテキスト位置が下方に移動します。または、contentStream.newLineAtOffset(float tx, float ty)を使用して特定のオフセットに移動することもできます。これらのメソッドは、コンテンツストリーム内に適切なPDF演算子(T*またはTd)を生成します。PDFコンテンツストリームは、配置状態を追跡する現在の変換行列(CTM)とテキスト行列を保持します。各テキスト配置操作は、
(
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ビューア間で一貫したテキストレンダリングを保証します。
- PDPageContentStream – PDFページにコンテンツを書き込むための主要なApache PDFBoxクラス
- Content Stream – ページコンテンツを記述するPDF演算子とオペランドのシーケンス
- Text Matrix – 現在のテキスト位置とスケーリングを追跡する変換行列
- Text Positioning Operators – ページ上のテキスト位置を制御するPDF演算子(Td、TD、T*)
- Leading – PDF文書におけるテキストベースライン間の垂直距離
- (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/
- (N.A.) (2014)
- (N.A.). (2014). Document management applications — Electronic document file format enhancement for accessibility — Part 1: Use of ISO 32000-1 (PDF/UA-1) . International Organization for Standardization Retrieved from https://www.iso.org/standard/64599.html
