ExcelスプレッドシートをJavaでPDFに変換する

編集を必要としないワークシートでデータを共有したい場合、そのようなExcelワークブックや特定のシートをPDF形式に変換することがよくあります。この記事では、ドキュメント変換APIを使用してExcelスプレッドシートをJavaでPDF形式に変換する4つの異なる方法を学習します。

各変換アプローチは、スプレッドシートの読み込み中にコードを少し変更するか、PDF形式の変換オプションを微調整することで採用できます。記事のスプレッドシートを変換するためのいくつかの可能な方法は次のとおりです。

ExcelファイルをPDFに変換するためのJavaAPI

GroupDocs.Conversionは、XLS、XLSXを含む多くのExcelファイル形式をPDF形式に変換できるようにするJavaAPIを提供します。この記事では、そのGroupDocs.Conversion forJavaを使用します。スプレッドシートに加えて、APIは、ドキュメントに記載されているワードプロセッシングドキュメント、プレゼンテーション、電子書籍、画像などの変換をサポートしています。

** JAR**ファイルはダウンロードセクションからダウンロードするか、Javaアプリケーション内で最新のリポジトリと依存関係Mavenの構成を使用できます。

<repository>
	<id>GroupDocsJavaAPI</id>
	<name>GroupDocs Java API</name>
	<url>http://repository.groupdocs.com/repo/</url>
</repository>
<dependency>
        <groupId>com.groupdocs</groupId>
        <artifactId>groupdocs-conversion</artifactId>
        <version>21.10</version> 
</dependency>

ExcelファイルのすべてのシートをPDFに変換-Java

最も簡単な方法は、すべてのシートをPDF形式に変換することです。次の手順では、完全なワークブック(すべてのシート) をJavaでPDF形式に変換します。

  • ** Converterを使用してExcel**(XLS、XLSX) ワークブックをロードします。
  • PdfConvertOptionsを使用してオーバーロードされたconvert() メソッドのいずれかを使用して、PDF形式に変換します。

以下は、完全なExcelワークブックをPDFに変換する2行のJavaソースコードです。

/*
 * すべてのExcelシートをJavaでPDF形式に変換します
 */
Converter converter = new Converter("path/spreadsheet.xlsx");
converter.convert("path/all-sheets-converted.pdf", new PdfConvertOptions());
ExcelデータからPDFを変換する

連続したExcelシートのPDFへの変換-Java

スプレッドシートのサブセットを順番に抽出することに関心がある場合は、開始シート番号と連続するシートの数を指定することで簡単に抽出できます。以下は、ExcelワークブックシートのサブシーケンスをJavaでPDF形式に変換する手順です。

  • Converterを使用してスプレッドシートをロード**します。
  • PdfConvertOptionsを使用してPDF変換オプションを定義します。
  • 開始シート番号後続シートの数を設定します。
  • ** convert() メソッドを使用して、設定に従って選択したシートをPDFに変換します。

以下は、最初の2枚のシートをPDFに変換するJavaコードスニペットです。 (シート番号1および2)

/*
 * ExcelシートのシーケンスをJavaでPDF形式に変換します
 */
Converter converter = new Converter("path/spreadsheet.xlsx");

PdfConvertOptions convertOptions = new PdfConvertOptions();
convertOptions.setPageNumber(1);
convertOptions.setPagesCount(2);

converter.convert("path/sequential-conversion.pdf", convertOptions);

特定のExcelシートからPDFへの変換-Java

ランダムなシート(シート番号1、2、4、7、…など) を変換することを考えている場合は、変換中に正確なシート番号をリストとして指定するだけです。以下は、Javaでシート番号の特定のリストをPDF形式に変換するための手順です。

  • Converterを使用してExcelファイルをロードします。
  • ** PdfConvertOptionsを使用して、正確なシート番号**をリストとして提供します。
  • ** convert() メソッドを使用して、リストされたシートをPDF形式に変換します。

次のコードスニペットは、シート番号1および3をPDF形式に変換します。

/*
 * 指定したExcelシートのリストをJavaでPDF形式に変換します
 */
Converter converter = new Converter("path/spreadsheet.xlsx");

PdfConvertOptions convertOptions = new PdfConvertOptions();
convertOptions.setPages(Arrays.asList(1,3));

converter.convert("path/specific-sheets-conversion.pdf", convertOptions);

Excelシートのセル範囲をPDFに変換-Java

これは、スプレッドシートの任意のセグメントを変換する珍しい方法です。上記の他のアプローチとほぼ同様の方法で、Excelシートの任意のセル範囲を変換できます。以下は、ワークブックシートのセル範囲をJavaでPDF形式に変換するための手順です。

  • シートのセル範囲を定義します。
  • スプレッドシートファイルをロード**します。
  • 連続するシート範囲または正確なシート番号を指定してシートを選択します。
  • 設定に従って、シートをPDF形式に変換**します。

次のコードは、シート番号1のセル範囲(A1:C20) をJavaでPDF形式に変換します。

/*
 * 指定されたExcelシートの指定されたセル範囲をJavaでPDF形式に変換します
 */
// ソースXLSXファイルのロードオプションと範囲を準備します
SpreadsheetLoadOptions loadOptions = new SpreadsheetLoadOptions();
loadOptions.setConvertRange("A1:C20");
Converter converter = new Converter("path/spreadsheet.xlsx", loadOptions);

PdfConvertOptions convertOptions = new PdfConvertOptions();
convertOptions.setPageNumber(1);
convertOptions.setPagesCount(1);

converter.convert("path/convert-cell-range.pdf", convertOptions);

無料のAPIライセンスを取得する

評価の制限なしにAPIを使用するために、無料の一時ライセンスを取得できます。

結論

今日学んだことをまとめましょう。 GroupDocs.Conversionを使用して、JavaでExcelスプレッドシートをPDF形式に変換する4つの異なる方法を学びました。最初に、完全なワークブックをPDF形式に変換し、次に連続したシートに変換しました。次に、正確なシート番号をリストすることにより、複数のシートがPDFに変更されました。最後に、選択したシートの選択したセル範囲からPDFファイルを取得しました。

ドキュメントからGroupDocs.ConversionAPIの詳細をご覧ください。お問い合わせは、フォーラムまでお問い合わせください。

関連項目