DioDocs for PDF
リニアライズドPDF
機能 > リニアライズドPDF

リニアライズドPDF を使用すると、ブラウザで開いたときに、ファイル全体をブラウザにロードする前に、ドキュメントの先頭ページをロードして表示できます。これにより、Web表示が高速になり、PDF全体がロードされてドキュメントの表示を開始するのを待つ必要がなくなります。DioDocs for PDFでは、PDFドキュメントをリニアライズ化でき、ドキュメントのリニアライズ化のステータスを取得することもできます。リニアライズ化の詳細については、PDF 仕様 1.7 (付属文書 F)を参照してください。

ドキュメントのリニアライズ化

DioDocs for PDFライブラリにあるGcPdfDocumentクラスのSaveメソッドを使用して、リニアライズドPDFを生成することができます。Saveメソッドには、他の必須パラメータとともに、SaveMode列挙型をパラメータとして受け取るオーバーロードがあります。SaveMode列挙型は「Default」モード、「Linearized」モードまたは「IncrementalUpdate」モードにてPDFドキュメントを保存するオプションを提供します。なお、リニアライズドPDFの生成と増分更新を同時に行うことはできません。つまり、「Linearized」モードと「IncrementalUpdate」モードは相互に排他的なモードとなります。ドキュメントをリニアライズドPDFとして保存するには、SaveMode列挙型をLinearizedに設定し、それをSaveメソッドにパラメータとして渡します。「IncrementalUpdate」モードの詳細については、増分更新を参照してください。

メモ: Linearizedプロパティを使用してPDFドキュメントをリニアライズ化している場合、V5JにてLinearizedプロパティが読み取り専用に変更されたことに注意してください。また、V5J以降のビルドを使用してドキュメントをリニアライズ化するためには、上記のようにSave(xxxx, SaveMode)メソッドを使用する必要があります。

以下の例では、既存のPDFドキュメントをリニアライズ化する方法を示しています。

C#
コードのコピー
// 新しいPDFドキュメントを作成します
GcPdfDocument doc = new GcPdfDocument();

// 必要に応じてドキュメントを変更します
// ...

// ドキュメントを「Linearized」モードで保存します
doc.Save("Demo.pdf", SaveMode.Linearized);

リニアライズド状態の取得

PDFドキュメントのリニアライズド状態を取得するには、GcPdfDocumentクラスのLinearizedプロパティを使用します。

C#
コードのコピー
var fs = new FileStream(@"../../docu01.pdf", FileMode.Open, FileAccess.Read);
var pdfDoc = new GcPdfDocument();
pdfDoc.Load(fs);
Console.WriteLine($"Linearized: {pdfDoc.Linearized}");