บทช่วยสอนฉบับย่อนี้จะอธิบายถึง วิธีเติมฟอร์ม PDF จากข้อมูล Excel ใน Java ประกอบด้วยรายละเอียดที่จำเป็นทั้งหมดในการกำหนดค่าสภาพแวดล้อม ขั้นตอนโดยละเอียดในการโหลดไฟล์ PDF เทมเพลต วิธีการโหลดและวนซ้ำผ่านแถวทั้งหมดในไฟล์ Excel และโค้ดตัวอย่างที่รันได้ซึ่งสามารถใช้สำหรับ การกรอกแบบฟอร์ม PDF จาก Excel ใน Java คุณจะได้เรียนรู้การเรียก API เพื่อเข้าถึงช่องแบบฟอร์มใดๆ ที่คุณเลือก จากนั้นตั้งค่าด้วยข้อมูลจากแถวและคอลัมน์ใดๆ ของไฟล์ XLSX ที่โหลด
ขั้นตอนการเติม PDF จาก Excel ใน Java
- สร้างสภาพแวดล้อมเพื่อใช้ Aspose.PDF และ Aspose.Cells จากที่เก็บ
- โหลดไฟล์ Excel ต้นฉบับลงในวัตถุ Workbook ที่มีข้อมูลต้นฉบับในรูปแบบ PDF
- วนซ้ำทุกแถวในไฟล์ Excel ต้นทาง
- โหลดไฟล์ PDF เทมเพลตลงในวัตถุ Document class และเข้าถึงช่องแบบฟอร์มในนั้น
- กรอกข้อมูลในแต่ละช่องแบบฟอร์มจากคอลัมน์ที่ต้องการในแต่ละแถวข้อมูลของ Excel
- บันทึกไฟล์ PDF เอาต์พุตแต่ละไฟล์โดยอ้างอิงถึงข้อมูลสำคัญในข้อมูลแถวของ Excel
ขั้นตอนเหล่านี้ เติม PDF จาก Excel ใน Java เพื่อให้โหลดไฟล์ Excel ต้นทางก่อน จากนั้นจึงดำเนินการวนซ้ำผ่านแถวที่ต้องการทั้งหมดในนั้นเพื่อเข้าถึงค่าเซลล์ที่เกี่ยวข้อง ในระหว่างการวนซ้ำ ไฟล์เทมเพลต PDF จะถูกโหลดและเข้าถึงฟิลด์ที่เกี่ยวข้องเพื่อตั้งค่าจากไฟล์ Excel ในการวนซ้ำไฟล์ PDF แต่ละไฟล์จะถูกบันทึกแยกกันโดยอ้างอิงถึงแถวปัจจุบันในการวนซ้ำ
รหัสเพื่อป้อน PDF อัตโนมัติจาก Excel ใน 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"); | |
} | |
} |
รหัสนี้สาธิตกระบวนการ เติมแบบฟอร์ม PDF โดยอัตโนมัติจากข้อมูล Excel ใน Java โดยการโหลดไฟล์ Excel ลงในวัตถุคลาสเวิร์กบุ๊กที่รองรับการเข้าถึงแต่ละแถวและคอลัมน์ของเวิร์กชีต และรับหรือตั้งค่าในนั้น ในทางกลับกัน คลาสเอกสารมีตัวเลือกในการโหลดไฟล์ PDF เทมเพลตและเข้าถึงฟิลด์ใดก็ได้โดยใช้ชื่อสำหรับเข้าถึงค่าและบันทึกไฟล์ PDF ที่อัปเดตแล้วบนดิสก์
ในหัวข้อนี้ เราได้เรียนรู้ขั้นตอนการเติมไฟล์ PDF ด้วยข้อมูลจากไฟล์ Excel หากคุณต้องการเรียนรู้ขั้นตอนการป้องกันไฟล์ PDF ด้วยรหัสผ่าน โปรดดูบทความใน วิธีป้องกัน PDF ด้วยรหัสผ่านใน Java