高速Web表示(Fast Web View)
Fast Web View(高速Web表示)は、線形化(linearization)または線形化PDFとも呼ばれ、PDFファイル全体のダウンロードが完了する前に、Webブラウザでページ単位での表示を可能にするファイル構造最適化技術です。
Fast Web View(高速Web表示)は、線形化(linearization)または線形化PDFとも呼ばれ、PDFファイル全体のダウンロードが完了する前に、Webブラウザでページ単位での表示を可能にするファイル構造最適化技術です。 ( 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は文書の内部構造を再編成し、最初のページを表示するために必要なオブジェクトをファイルの先頭に配置します。これにより、WebサーバーはPDFコンテンツを効率的にストリーミングでき、HTTP接続を介してPDFにアクセスする際のユーザーエクスペリエンスが大幅に向上します。
Fast Web Viewは、 ( 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ドキュメントを再構築してページ単位でのダウンロードと段階的なレンダリングを可能にします。オブジェクトがファイル全体に任意の順序で配置される標準的なPDFとは異なり、線形化PDFはオブジェクトを慎重に並べ替えたシーケンスで配置し、ファイルの先頭に線形化辞書を持ちます。この辞書には、ページ境界、オブジェクトの場所、相互参照情報など、文書構造に関するメタデータが含まれています。
線形化PDFと標準PDFの主な違いは、論理的なコンテンツや構造ではなく、ファイル内のオブジェクトの物理的な配置にあります。線形化PDFには、非線形化版と同じオブジェクトとデータがすべて含まれていますが、Web配信に典型的な順次アクセスパターンを優先するように編成されています。線形化プロセスでは、ファイルの先頭にメイン相互参照テーブルを作成し、PDFビューアが文書全体をダウンロードせずに特定のページを効率的に見つけてリクエストするのに役立つヒントテーブルを含めることがあります。
PDFドキュメントを提供するWebアプリケーションを構築する開発者にとって、Fast Web Viewはユーザーエクスペリエンスに直接影響する重要なパフォーマンス上の利点を提供します。ユーザーがWebサイト上のPDFへのリンクをクリックすると、線形化により、数メガバイトのファイル全体をダウンロードする必要なく、大きな文書でも数秒以内に最初のページがレンダリングされます。これは、低速接続を使用しているモバイルユーザーや、大規模な技術文書、レポート、電子書籍を提供するアプリケーションにとって特に重要です。
実装の観点から、Fast Web Viewを有効にするには、配信時ではなくPDF生成時に考慮する必要があります。PDF作成ライブラリを使用する開発者は、線形化オプションを明示的に有効にする必要があり、WebサーバーはHTTP Rangeヘッダーを使用したバイトレンジリクエストをサポートして、その利点を十分に活用する必要があります。さらに、線形化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ファイルを再構築します。ファイルは線形化辞書オブジェクトで始まり、これはファイル内の最初のオブジェクトでなければならず、/Linearized(線形化に使用されるPDFバージョンを示す)、/L(ファイル全体の長さ)、/H(プライマリヒントストリームのオフセットと長さ)、/O(最初のページのオブジェクト番号)などのキーが含まれています。
線形化辞書の後には、最初のページセクションが続き、ページ1を表示するために必要なすべてのオブジェクト(ページオブジェクト自体、そのコンテンツストリーム、フォント、画像、その他のリソース)が含まれています。このクラスタリングにより、Webサーバーは初期レンダリングに必要なすべてを提供する連続したバイトレンジを配信できます。
最初のページセクションの後、ファイルには後続のページへの効率的なアクセスのためのロードマップを提供する線形化パラメータ辞書(ヒントテーブル)が含まれています。これらのヒントテーブルには、オブジェクトの場所、共有リソース、ページ境界に関する圧縮された情報が含まれています。残りのページと共有オブジェクトは、シークを最小化し、順次アクセスパターンを最適化するように編成されています。
WebブラウザまたはPDFビューアが線形化PDFをリクエストすると、まずファイルの先頭をリクエストし、線形化辞書を迅速に読み取り、最初のページを表示します。ユーザーが追加のページに移動すると、ビューアはヒントテーブルを使用して、特定のページに必要なデータのみに対して正確なバイトレンジリクエストを発行し、不要なデータ転送を回避します。
- Incremental Update(インクリメンタル更新) – ファイル全体を書き換えるのではなく、変更を追加することでPDFファイルを変更する方法。線形化を無効化する
- Cross-Reference Table(相互参照テーブル) – オブジェクト番号をバイトオフセットにマッピングするPDFファイルのインデックス構造。線形化PDFでは高速アクセスのために再構築される
- HTTP Range Request(HTTP範囲リクエスト) – クライアントがファイルの特定のバイト範囲をリクエストできるプロトコル機能。線形化PDFを活用するために不可欠
- Object Stream(オブジェクトストリーム) – 線形化ファイルで使用できるPDFオブジェクトの圧縮されたコレクション。ただし、最初のページへの高速アクセスを維持するために慎重に編成する必要がある
- Byte-Serving(バイト配信) – 部分的なコンテンツリクエストに応答するサーバー側の機能。効果的なFast Web View配信に必要
- (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
