แปลง Excel เป็น PDF ด้วย GroupDocs.Conversion Java
บทนำ
คุณต้องการ แปลง Excel เป็น PDF อย่างรวดเร็วพร้อมกับให้ผลลัพธ์เรียบร้อยและไม่มีแถวหรือคอลัมน์ว่างหรือไม่? นักพัฒนาจำนวนมากเจอปัญหา PDF ที่หนาแน่นและมีพื้นที่ว่างที่ไม่จำเป็น ทำให้เอกสารสุดท้ายดูไม่เป็นมืออาชีพ ในบทแนะนำนี้ เราจะแสดงวิธีใช้ GroupDocs.Conversion Java เพื่อสร้าง PDF ที่สะอาดจากไฟล์ Excel เพียงไม่กี่บรรทัดของโค้ด เมื่อคุณอ่านจบคู่มือแล้ว คุณจะสามารถ:
- ตั้งค่า GroupDocs.Conversion ในโครงการ Maven
- กำหนดค่า load options เพื่อ ข้ามแถวและคอลัมน์ที่ว่าง
- แปลงแผ่นงาน Excel เป็น PDF อย่างมีประสิทธิภาพ
- นำโซลูชันไปใช้ในสถานการณ์จริง เช่น การสร้างรายงานอัตโนมัติหรือการเก็บเอกสาร
มาเริ่มกันเลย!
คำตอบสั้น
- ไลบรารีที่ใช้ทำการแปลงคืออะไร? GroupDocs.Conversion Java
- ฟีเจอร์หลักที่ใช้?
SpreadsheetLoadOptions.setSkipEmptyRowsAndColumns(true) - เวอร์ชัน Java ขั้นต่ำ? JDK 8 หรือสูงกว่า
- สามารถประมวลผลไฟล์หลายไฟล์ได้หรือไม่? ใช่ – ผสานโค้ดนี้กับลอจิกแบบ batch เพื่อการแปลงจำนวนมาก
- ต้องมีใบอนุญาตหรือไม่? จำเป็นต้องมีใบอนุญาตชั่วคราวหรือ trial สำหรับการใช้งานใน production
“แปลง excel เป็น pdf” คืออะไร?
การแปลง Excel เป็น PDF หมายถึงการเปลี่ยนสเปรดชีต (.xlsx, .xls) ให้เป็นเอกสาร PDF ที่มีเลย์เอาต์คงที่ ซึ่งทำให้เนื้อหาแสดงผลเหมือนกันบนอุปกรณ์ใดก็ได้และเหมาะสำหรับการแชร์, พิมพ์, หรือเก็บรักษา
ทำไมต้องใช้ GroupDocs.Conversion Java สำหรับงานนี้?
GroupDocs.Conversion ให้ API ระดับสูง ที่ซ่อนความซับซ้อนของการจัดการรูปแบบไฟล์ไว้ มันมีคุณสมบัติ:
- ตัวเลือกการโหลดอัจฉริยะ (เช่น ข้ามแถว/คอลัมน์ที่ว่าง)
- การแปลงหนึ่งหน้า‑ต่อ‑แผ่น สำหรับ PDF ที่กระชับ
- ความเข้ากันได้ข้ามแพลตฟอร์ม – ทำงานบน Windows, Linux, และ macOS
- รองรับการประมวลผลแบบ batch สำหรับการทำงานอัตโนมัติในระดับใหญ่
ข้อกำหนดเบื้องต้น
ก่อนที่เราจะลงลึกในโค้ด โปรดตรวจสอบว่าคุณมี:
- Java Development Kit (JDK) 8+ – ดาวน์โหลดจาก Oracle’s website
- Maven – ดาวน์โหลดจาก maven.apache.org
- GroupDocs.Conversion Java – เราจะเพิ่มเป็น dependency ของ Maven
ไลบรารีและการพึ่งพาที่จำเป็น
เพิ่ม repository และ dependency ต่อไปนี้ในไฟล์ pom.xml ของคุณ:
<repositories>
<repository>
<id>repository.groupdocs.com</id>
<name>GroupDocs Repository</name>
<url>https://releases.groupdocs.com/conversion/java/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.groupdocs</groupId>
<artifactId>groupdocs-conversion</artifactId>
<version>25.2</version>
</dependency>
</dependencies>
การรับใบอนุญาต
- รับใบอนุญาตชั่วคราวจาก GroupDocs’ Temporary License page.
- สำหรับ trial ฟรี ดาวน์โหลดไลบรารีจาก GroupDocs Releases Page.
วิธีแปลง Excel เป็น PDF ด้วย GroupDocs.Conversion Java
ต่อไปนี้เป็นขั้นตอนแบบละเอียดที่รวม การสร้าง pdf จาก excel ด้วยตัวเลือกขั้นสูงของไลบรารี
ขั้นตอน 1: กำหนดค่า Load Options
ก่อนอื่นบอกให้คอนเวอร์เตอร์ละเลยแถวและคอลัมน์ที่ว่างและให้แต่ละแผ่นอยู่บนหน้า PDF หนึ่งหน้า
import com.groupdocs.conversion.options.load.SpreadsheetLoadOptions;
String inputFilePath = "YOUR_DOCUMENT_DIRECTORY/sample.xlsx"; // Input file path
// Configure load options to skip empty rows and columns and set one page per sheet.
SpreadsheetLoadOptions loadOptions = new SpreadsheetLoadOptions();
loadOptions.setSkipEmptyRowsAndColumns(true);
loadOptions.setOnePagePerSheet(true);
คำอธิบาย: SpreadsheetLoadOptions ควบคุมวิธีการอ่านสเปรดชีต การเปิดใช้งาน setSkipEmptyRowsAndColumns(true) จะลบพื้นที่ว่าง ทำให้ PDF มีความกระชับมากขึ้น
ขั้นตอน 2: เริ่มต้น Converter
สร้างอินสแตนซ์ Converter ที่จะจัดการการแปลง
import com.groupdocs.conversion.Converter;
// Initialize the converter with the input file path and load options.
Converter converter = new Converter(inputFilePath, () -> loadOptions);
คำอธิบาย: Lambda นี้จะให้ loadOptions ที่กำหนดไว้ก่อนหน้านี้ทุกครั้งที่คอนเวอร์เตอร์ต้องโหลดเอกสาร
ขั้นตอน 3: เตรียม PDF Conversion Options
แม้ค่าตั้งค่าเริ่มต้นจะทำงานได้ดีในหลายกรณี คุณก็สามารถปรับแต่งผลลัพธ์ PDF ได้หากต้องการ
import com.groupdocs.conversion.options.convert.PdfConvertOptions;
// Create PdfConvertOptions (optional, as default options are used here).
PdfConvertOptions pdfConvertOptions = new PdfConvertOptions();
คำอธิบาย: PdfConvertOptions ให้คุณปรับขอบกระดาษ, ขนาดหน้า, และการตั้งค่าอื่น ๆ ที่เกี่ยวกับ PDF
ขั้นตอน 4: ดำเนินการแปลง
สุดท้ายให้เรียกการแปลงและบันทึก PDF ลงดิสก์
String outputFilePath = "YOUR_OUTPUT_DIRECTORY/converted.pdf"; // Output file path
// Perform the conversion from spreadsheet to PDF.
converter.convert(outputFilePath, pdfConvertOptions);
คำอธิบาย: เมธอด convert จะสร้าง PDF ที่มีเฉพาะเซลล์ที่มีข้อมูลเท่านั้น เนื่องจากเปิดใช้ตัวเลือกข้ามแถว/คอลัมน์ที่ว่าง
ปัญหาทั่วไปและการแก้ไข
- เส้นทางไฟล์ไม่ถูกต้อง – ตรวจสอบเส้นทางของไฟล์ต้นทางและปลายทางทั้งสองครั้ง
- ข้อผิดพลาดเรื่องสิทธิ์ – ให้แน่ใจว่ากระบวนการ Java มีสิทธิ์อ่าน/เขียนในโฟลเดอร์ที่เกี่ยวข้อง
- เวิร์กบุ๊กขนาดใหญ่ – เพิ่มหน่วยความจำ heap (
-Xmx2g) เพื่อหลีกเลี่ยงOutOfMemoryError
กรณีการใช้งานจริง
- การสร้างรายงานอัตโนมัติ – แปลงรายงาน Excel รายวันเป็น PDF สวยงามสำหรับผู้มีส่วนได้ส่วนเสีย
- การเก็บเอกสาร – เก็บงบการเงินเป็น PDF โดยไม่มีเซลล์ว่างทำให้ไฟล์ดูเรียบร้อย
- การแปลง excel pdf แบบ batch – วนลูปผ่านโฟลเดอร์ของสเปรดชีตและใช้ตรรกะเดียวกันสำหรับการประมวลผลปริมาณมาก
เคล็ดลับประสิทธิภาพ
- การจัดการหน่วยความจำ – ปิดออบเจ็กต์
Converterหลังการแปลงแต่ละครั้ง (converter.close()) - การประมวลผลแบบ batch – แบ่งไฟล์เป็นกลุ่มเล็ก ๆ เพื่อควบคุมการใช้หน่วยความจำให้คาดเดาได้
- การตรวจสอบ – บันทึกเวลาการแปลงและการใช้หน่วยความจำเพื่อหาจุดคอขวด
สรุป
คุณมีวิธีการที่ครบถ้วนและพร้อมใช้งานใน production เพื่อ แปลง Excel เป็น PDF ด้วย GroupDocs.Conversion Java พร้อมกับการลบแถวและคอลัมน์ที่ว่างโดยอัตโนมัติ นำรูปแบบนี้ไปใช้ในสายงานการสร้างรายงาน, ระบบจัดการเอกสาร, หรือสถานการณ์ใด ๆ ที่ต้องการผลลัพธ์ PDF ที่สะอาดและเป็นมืออาชีพ
คำถามที่พบบ่อย
Q1: สามารถแปลงประเภทเอกสารอื่น ๆ ด้วย GroupDocs.Conversion Java ได้หรือไม่?
A1: ได้! ไลบรารีรองรับหลายรูปแบบ รวมถึง Word, PowerPoint, และรูปภาพ
Q2: PDF ยังแสดงแถวว่างอยู่ – ควรตรวจสอบอะไร?
A2: ตรวจสอบให้แน่ใจว่าได้เรียก loadOptions.setSkipEmptyRowsAndColumns(true) ก่อนสร้าง Converter
Q3: จะจัดการกับข้อยกเว้นระหว่างการแปลงอย่างไร?
A3: ห่อโค้ดการแปลงด้วยบล็อก try‑catch แล้วบันทึกรายละเอียดของข้อยกเว้นสำหรับการดีบัก
Q4: สามารถปรับแต่งเลย์เอาต์ของ PDF (ขอบ, แนวตั้ง/แนวนอน) ได้หรือไม่?
A4: แน่นอน ใช้ PdfConvertOptions เพื่อกำหนดขอบ, ขนาดหน้า, และแนวตั้ง/แนวนอน
Q5: GroupDocs.Conversion ใช้งานได้ในโครงการที่ไม่ใช้ Maven หรือไม่?
A5: ใช่ คุณสามารถดาวน์โหลดไฟล์ JAR โดยตรงจาก GroupDocs website.
Last Updated: 2026-01-18
Tested With: GroupDocs.Conversion 25.2
Author: GroupDocs