この簡単なチュートリアルでは、Java で Excel データから PDF フォームに入力する方法 について説明します。環境を構成するために必要なすべての詳細、テンプレート PDF ファイルをロードするための詳細な手順、Excel ファイル内のすべての行をロードして反復処理する方法、**から PDF フォームに入力するために使用できる実行可能なサンプル コードが含まれています。 JavaでExcel **。また、選択した任意のフォーム フィールドにアクセスし、読み込まれた XLSX ファイルの任意の行と列のデータを使用してその値を設定するための API 呼び出しについても学習します。
Java で Excel から PDF に入力する手順
- リポジトリから Aspose.PDF と Aspose.Cells を使用するための環境を確立します
- ソース Excel ファイルを、PDF フォームのソース データを含む Workbook オブジェクトにロードします。
- ソース Excel ファイルのすべての行を反復処理する
- テンプレート PDF ファイルを Document class オブジェクトにロードし、その中のフォーム フィールドにアクセスします。
- Excelの各行データの任意の列から各フォームフィールドにデータを入力します
- Excel行データのキーデータを参照して各出力PDFファイルを保存
これらの手順は Java で Excel から PDF を作成 するため、最初にソース Excel ファイルが読み込まれ、次にその中の必要なすべての行に対して反復が実行され、それぞれのセル値にアクセスします。繰り返しの間に、テンプレート PDF ファイルが読み込まれ、それぞれのフィールドにアクセスして Excel ファイルから値を設定します。同じ繰り返しで、塗りつぶされた各 PDF ファイルは、繰り返しの現在の行を参照して個別に保存されます。
Java で Excel から PDF を自動入力するコード
import com.aspose.cells.Workbook; | |
import com.aspose.pdf.Document; | |
import com.aspose.pdf.TextBoxField; | |
public class AsposeTest { | |
public static void main(String[] args) throws Exception {//Main function to fill PDF form with Excel data | |
// Instantiate the license | |
com.aspose.pdf.License licPdf = new com.aspose.pdf.License(); | |
licPdf.setLicense("Aspose.Total.lic"); | |
com.aspose.cells.License licCells = new com.aspose.cells.License(); | |
licCells.setLicense("Aspose.Total.lic"); | |
// Open workbook containing data to be filled in the PDF form | |
Workbook workbook = new Workbook("InputWorkbook.xlsx"); | |
for (int iRow = 1; iRow <= 15; iRow++) | |
{ | |
// Open PDF template document containing form fields | |
Document pdfDocument = new Document("PdfWithFormField.pdf"); | |
// Get a field | |
TextBoxField textBoxField = (TextBoxField)pdfDocument.getForm().get_Item("textboxRollNo"); | |
// Modify field value | |
Double data = (Double) workbook.getWorksheets().get(0).getCells().get(iRow, 0).getValue(); | |
textBoxField.setValue(Double.toString(data)); | |
// Get another field | |
textBoxField = (TextBoxField) pdfDocument.getForm().get_Item("textboxName"); | |
// Modify field value | |
textBoxField.setValue((String) workbook.getWorksheets().get(0).getCells().get(iRow, 1).getValue()); | |
// Save the updated document as a separate PDF file | |
pdfDocument.save(textBoxField.getValue().trim() + ".pdf"); | |
} | |
System.out.println("Done"); | |
} | |
} |
このコードは、ワークシートの各行と列へのアクセスと値の取得または設定をサポートする Workbook クラス オブジェクトに Excel ファイルをロードすることにより、* Java で Excel データから PDF フォームに自動的に入力するプロセスを示しています。一方、Document クラスは、テンプレート PDF ファイルをロードし、その名前を使用して値にアクセスし、更新された PDF ファイルをディスクに保存するための任意のフィールドにアクセスするオプションを提供します。
このトピックでは、PDF ファイルに Excel ファイルのデータを入力するプロセスを学習しました。 PDF ファイルをパスワードで保護するプロセスを知りたい場合は、JavaでPDFをパスワードで保護する方法 の記事を参照してください。