Hur man fyller i PDF-formulär från Excel-data i Java

Denna snabba handledning förklarar hur man fyller i PDF-formulär från Excel-data i Java. Den innehåller alla nödvändiga detaljer för att konfigurera miljön, detaljerade steg för att ladda mall-PDF-filen, metoder för att ladda och iterera genom alla rader i Excel-filen och en körbar exempelkod som kan användas för att fylla i PDF-formulär från Excel i Java. Du kommer också att lära dig API-anropen för att komma åt valfritt formulärfält och sedan ställa in dess värde med data från valfri rad och kolumn i den inlästa XLSX-filen.

Steg för att fylla PDF från Excel i Java

  1. Etablera miljön för att använda Aspose.PDF och Aspose.Cells från arkivet
  2. Ladda in Excel-källfilen i objektet Workbook som innehåller källdata för PDF-formuläret
  3. Iterera igenom alla rader i källfilen i Excel
  4. Ladda in PDF-mallen i objektet Document class och få tillgång till formulärfälten i det
  5. Fyll i data i varje formulärfält från önskad kolumn i varje Excel-raddata
  6. Spara varje utgående PDF-fil med hänvisning till nyckeldata i Excel-raddata

Dessa steg fyller i PDF från Excel i Java så att först källfilen för Excel laddas och sedan utförs iteration genom alla önskade rader i den för att komma åt respektive cellvärde. Under iterationen laddas PDF-mallen och dess respektive fält öppnas för att ställa in värdena från Excel-filen. I samma iteration sparas varje ifylld PDF-fil separat med hänvisning till den aktuella raden i iterationen.

Kod för att autofylla PDF från Excel i Java

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");
}
}

Den här koden demonstrerar processen att automatiskt fylla i PDF-formulär från Excel-data i Java genom att ladda Excel-filen i Workbook-klassobjektet som stöder åtkomst till varje rad och kolumn i ett kalkylblad och att hämta eller ställa in värden i det. Å andra sidan ger klassen Document alternativ för att ladda PDF-mallen och få tillgång till alla dess fält med hjälp av dess namn för att komma åt värdena och spara den uppdaterade PDF-filen på disken.

I det här ämnet har vi lärt oss processen att fylla en PDF-fil med data från en Excel-fil. Om du vill lära dig processen för att skydda en PDF-fil med ett lösenord, se artikeln om Hur man skyddar PDF med lösenord i Java.

 Svenska