PDFファイルを他の形式に変換する

PDFをEPUBに変換

EPUB(電子出版物の略)は、国際デジタル出版フォーラム(IDPF)による無料でオープンな電子書籍の標準です。 Files have the extension .epub.EPUBはリフロー可能なコンテンツ用に設計されており、EPUBリーダーは特定の表示デバイスに最適化されたテキストを表示できます。EPUBは固定レイアウトのコンテンツもサポートしています。この形式は、出版社や変換会社が社内で使用するためだけでなく、配布や販売のための単一の形式として意図されています。Open eBook標準を置き換えます。

Aspose.PDF for Javaは、PDFドキュメントをEPUB形式に変換する機能をサポートしています。Aspose.PDF for JavaにはEpubSaveOptionsというクラスがあり、Document.save(..)メソッドの第2引数として使用して、EPUBファイルを生成できます。この要件を達成するために、次のコードスニペットを試してみてください。

// PDFドキュメントをロード
Document document = new Document(DATA_DIR + "PDFToEPUB.pdf");
// Epub保存オプションをインスタンス化
EpubSaveOptions options = new EpubSaveOptions();
// コンテンツのレイアウトを指定
options.setContentRecognitionMode(EpubSaveOptions.RecognitionMode.Flow);
// ePUBドキュメントを保存
document.save(DATA_DIR + "PDFToEPUB_out.epub", options);
document.close();

PDFをLaTeX/TeXに変換する

Aspose.PDF for JavaはPDFをLaTeX/TeXに変換することをサポートしています。LaTeXファイル形式は特別なマークアップを持つテキストファイル形式で、高品質な組版のためのTeXベースのドキュメント準備システムで使用されます。

PDFファイルをTeXに変換するために、Aspose.PDFにはTeXSaveOptionsクラスがあり、変換プロセス中に一時的な画像を保存するためのsetOutDirectoryPathメソッドを提供します。

以下のコードスニペットは、JavaでPDFファイルをTEX形式に変換するプロセスを示しています。

String documentFileName = Paths.get(DATA_DIR.toString(), "PDFToTeX.pdf").toString();
String texDocumentFileName = Paths.get(DATA_DIR.toString(), "PDFToTeX_out.tex").toString();

// Documentオブジェクトを作成
Document document = new Document(documentFileName);

// LaTex保存オプションをインスタンス化
TeXSaveOptions saveOptions = new TeXSaveOptions();

// 出力ディレクトリを指定
String pathToOutputDirectory = DATA_DIR.toString();

// 保存オプションオブジェクトの出力ディレクトリパスを設定
saveOptions.setOutDirectoryPath(pathToOutputDirectory);

// PDFファイルをLaTex形式で保存
document.save(texDocumentFileName, saveOptions);
document.close();

PDFをテキストに変換

Aspose.PDF for Javaは、PDF文書全体および単一ページをテキストファイルに変換することをサポートしています。

PDF文書全体をテキストファイルに変換

TextAbsorberクラスのVisitメソッドを使用して、PDF文書をTXTファイルに変換することができます。

以下のコードスニペットは、すべてのページからテキストを抽出する方法を説明しています。

// ドキュメントを開く
String pdfFileName = Paths.get(DATA_DIR.toString(), "demo.pdf").toString();
String txtFileName = Paths.get(DATA_DIR.toString(), "PDFToTXT_out.txt").toString();

// PDF文書を読み込む
Document document = new Document(pdfFileName);
TextAbsorber ta = new TextAbsorber();
ta.visit(document);
// 抽出したテキストをテキストファイルに保存
BufferedWriter writer = new BufferedWriter(new FileWriter(txtFileName));
writer.write(ta.getText());
writer.close();

PDFページをテキストファイルに変換する

Aspose.PDF for Javaを使用して、PDFドキュメントをTXTファイルに変換できます。このタスクを解決するには、TextAbsorberクラスのVisitメソッドを使用する必要があります。

以下のコードスニペットは、特定のページからテキストを抽出する方法を説明しています。

String pdfFileName = Paths.get(DATA_DIR.toString(), "demo.pdf").toString();
String txtFileName = Paths.get(DATA_DIR.toString(), "PDFToTXT_out.txt").toString();

// PDFドキュメントを読み込む
Document document = new Document(pdfFileName);

TextAbsorber ta = new TextAbsorber();
int[] pages = new int[] { 1, 3, 4 };

for (int page : pages) {
    ta.visit(document.getPages().get_Item(page));
}

// 抽出したテキストをテキストファイルに保存する
BufferedWriter writer = new BufferedWriter(new FileWriter(txtFileName));
writer.write(ta.getText());
writer.close();
document.close();

PDFをXPSに変換

Aspose.PDF for Javaは、PDFファイルをXPS形式に変換する機能を提供します。JavaでPDFファイルをXPS形式に変換するために、以下のコードスニペットを使用してみましょう。

XPSファイル形式は、主にMicrosoft CorporationによるXML Paper Specificationに関連付けられています。XML Paper Specification (XPS)は、以前はMetroというコードネームで知られ、次世代プリントパス (NGPP) のマーケティングコンセプトを包括し、Windowsオペレーティングシステムへの文書作成と表示の統合を目指すMicrosoftの取り組みです。

PDFファイルをXPSに変換するために、Aspose.PDFにはXpsSaveOptionsクラスがあり、これはXPSファイルを生成するためにDocument.save(..)コンストラクタの第2引数として使用されます。 以下のコードスニペットは、PDFファイルをXPS形式に変換するプロセスを示しています。

String documentFileName = Paths.get(DATA_DIR.toString(), "sample.pdf").toString();
String xpsDocumentFileName = Paths.get(DATA_DIR.toString(), "sample-res-xps.xps").toString();

// Documentオブジェクトを作成
Document document = new Document(documentFileName);

// XPS保存オプションをインスタンス化
XpsSaveOptions saveOptions = new XpsSaveOptions();

// 出力をXML形式で保存
document.save(xpsDocumentFileName, saveOptions);
document.close();