แยกหน้าของเอกสาร Word ด้วย GroupDocs.Merger สำหรับ Java

ในบทแนะนำนี้คุณจะได้เรียนรู้วิธี แยกหน้าของเอกสาร Word — รวมถึงรูปแบบอื่น ๆ เช่น PDF และ PPTX — ด้วยการใช้ GroupDocs.Merger สำหรับ Java ไม่ว่าคุณจะต้องการดึงข้อสัญญาเพียงข้อเดียว, สร้างเอกสารแจกจากการนำเสนอ, หรือแบ่งรายงานขนาดใหญ่ให้เป็นส่วนย่อยที่จัดการได้, API จะช่วยให้คุณระบุช่วงหน้าที่ต้องการ, ตัวกรองเลขคี่/เลขคู่, หรือผลลัพธ์หน้าเดียวได้ด้วยเพียงไม่กี่บรรทัดของโค้ด

คำตอบด่วน

  • “extract specific pages” หมายถึงอะไร? หมายถึงการสร้างเอกสารใหม่ที่มีเฉพาะหน้าที่คุณเลือกจากไฟล์ต้นฉบับ
  • รูปแบบที่รองรับคืออะไร? PDF, DOCX, PPTX, และรูปแบบยอดนิยมอื่น ๆ อีกหลายรูปแบบ
  • ฉันสามารถกรองโดยหน้าเลขคี่หรือเลขคู่ได้หรือไม่? ได้, ใช้ตัวเลือก RangeMode (เช่น OddPages)
  • ต้องมีใบอนุญาตหรือไม่? การทดลองใช้ฟรีทำงานสำหรับการประเมิน; จำเป็นต้องมีใบอนุญาตถาวรสำหรับการใช้งานจริง
  • เหมาะกับเอกสารขนาดใหญ่หรือไม่? ใช่ — แยกส่วนเอกสารขนาดใหญ่เพื่อให้การใช้หน่วยความจำน้อยลง

การแยกหน้าที่เฉพาะคืออะไร?

การแยกหน้าที่เฉพาะหมายถึงการนำส่วนย่อยของหน้าที่เลือกจากเอกสารต้นฉบับและสร้างไฟล์ใหม่ที่มีเพียงหน้าที่เลือกนั้นเท่านั้น เทคนิคนี้มีประโยชน์สำหรับการสร้างรายงานที่มุ่งเน้น, แบ่งข้อสัญญาเป็นส่วนย่อย, หรือแจกสไลด์การนำเสนอเฉพาะส่วนโดยไม่ต้องเปิดเผยเอกสารต้นฉบับทั้งหมด

ทำไมต้องใช้ GroupDocs.Merger สำหรับ Java เพื่อแยก PDF และเอกสาร Word?

โหลดเฉพาะหน้าที่ต้องการและให้ GroupDocs.Merger จัดการงานหนัก ไลบรารีรองรับ รูปแบบเข้าและออกกว่า 50 รูปแบบ, สามารถประมวลผลไฟล์ขนาด ถึง 2 GB โดยไม่ต้องโหลดเอกสารทั้งหมดเข้าสู่หน่วยความจำ, และให้ API ที่สอดคล้องกันสำหรับ PDF, DOCX, PPTX และอื่น ๆ — ทำให้คุณไม่ต้องสลับใช้เครื่องมือหลายตัว

ข้อกำหนดเบื้องต้น

  • GroupDocs.Merger for Java (รุ่นล่าสุด)
  • JDK 8+
  • IDE เช่น IntelliJ IDEA หรือ Eclipse
  • Maven หรือ Gradle สำหรับการจัดการ dependencies

การตั้งค่า GroupDocs.Merger สำหรับ Java

เพิ่มไลบรารีลงในโปรเจกต์ของคุณโดยใช้เครื่องมือสร้างที่คุณชื่นชอบ

Maven

<dependency>
    <groupId>com.groupdocs</groupId>
    <artifactId>groupdocs-merger</artifactId>
    <version>latest-version</version>
</dependency>

Gradle

implementation 'com.groupdocs:groupdocs-merger:latest-version'

Direct Download: คุณสามารถดาวน์โหลดไลบรารีโดยตรงจาก GroupDocs.Merger for Java releases

การรับใบอนุญาต

  • Free Trial – ทดสอบคุณสมบัติเต็มรูปแบบโดยไม่มีข้อจำกัด
  • Temporary License – ระยะเวลาการประเมินที่ต่ออายุได้
  • Purchase – ใบอนุญาตถาวรสำหรับการใช้งานในผลิตภัณฑ์

Basic Initialization and Setup
คลาส Merger เป็นจุดเริ่มต้นสำหรับการดำเนินการแยกทั้งหมด มันเป็นตัวแทนของเอกสารในหน่วยความจำและให้เมธอดสำหรับจัดการหน้า เพื่อเริ่มต้น GroupDocs.Merger ให้สร้างอินสแตนซ์ของ Merger ด้วยเส้นทางไฟล์เอกสารของคุณ:

import com.groupdocs.merger.Merger;

String filePath = "YOUR_DOCUMENT_DIRECTORY/Sample_Docx_10_Pages.docx";
Merger merger = new Merger(filePath);

วิธีการแยกหน้าที่เฉพาะโดยใช้ GroupDocs.Merger สำหรับ Java

เพื่อแยกหน้าที่เฉพาะ, โหลดเอกสารต้นฉบับด้วยอินสแตนซ์ Merger, กำหนดอ็อบเจกต์ SplitOptions ด้วยหน้าตั้งต้นและหน้าสิ้นสุดที่ต้องการและอาจตั้งค่า RangeMode (เช่น OddPages หรือ EvenPages). จากนั้นเรียก merger.split(options) ซึ่งจะสร้างไฟล์ใหม่ที่มีเฉพาะหน้าที่เลือก

คำตอบโดยตรง

สร้างอินสแตนซ์ Merger, กำหนดอ็อบเจกต์ SplitOptions ด้วย RangeMode.OddPages และหน้าตั้งต้น/สิ้นสุดที่ต้องการ, แล้วเรียก merger.split(options). กระบวนการขั้นตอนเดียวนี้จะแยกเฉพาะหน้าที่เป็นเลขคี่ในช่วงที่กำหนดและบันทึกลงในรูปแบบเอาต์พุตที่คุณระบุ

ขั้นตอนที่ 1: กำหนดเส้นทางไฟล์เข้าและออก

ตั้งค่าไฟล์ต้นฉบับและรูปแบบชื่อไฟล์ปลายทางสำหรับไฟล์ที่แยก:

String filePath = "YOUR_DOCUMENT_DIRECTORY/Sample_Docx_10_Pages.docx";
String filePathOut = "YOUR_OUTPUT_DIRECTORY/SplitToSinglePagesByRangeWithFilter-Output.docx";

ขั้นตอนที่ 2: กำหนดค่า Split Options (ช่วงและตัวกรอง)

คลาส SplitOptions บอกไลบรารีว่าต้องแยกหน้าใดและใช้ตัวกรองใด RangeMode เป็น enumeration ที่ระบุหน้าที่จะรวม, เช่น หน้าเลขคี่, หน้าเลขคู่ หรือทั้งหมด. คุณสมบัติ filePathOut กำหนดรูปแบบการตั้งชื่อ, ส่วน startPage และ endPage กำหนดช่วงรวม. RangeMode.OddPages จะเก็บเฉพาะหน้าที่เป็นเลขคี่ในช่วงนั้น, ทำให้ แยกหน้าที่เฉพาะ ได้อย่างมีประสิทธิภาพ

import com.groupdocs.merger.domain.options.SplitOptions;
import com.groupdocs.merger.domain.options.RangeMode;

SplitOptions splitOptions = new SplitOptions(filePathOut, 3, 7, RangeMode.OddPages);

ขั้นตอนที่ 3: ดำเนินการแยก

ดำเนินการแยกโดยใช้ตัวเลือกที่กำหนด:

Merger merger = new Merger(filePath);
merger.split(splitOptions);

เคล็ดลับการแก้ไขปัญหา

  • ตรวจสอบว่าเส้นทางไฟล์ถูกต้องและเข้าถึงได้
  • ตรวจสอบว่าตัวเลขหน้าตรงกับจำนวนหน้าทั้งหมดของเอกสาร; หากไม่ตรงจะเกิดข้อยกเว้น

วิธีการแยก PDF เป็นหน้าเดี่ยว (split pdf single pages)

เพื่อแยก PDF เป็นหน้าต่าง ๆ, เปิดไฟล์ด้วยอินสแตนซ์ Merger และตั้งค่า RangeMode.AllPages ในอ็อบเจกต์ SplitOptions. ระบุรูปแบบการตั้งชื่อเอาต์พุต, แล้วเรียก merger.split(options). ไลบรารีจะสร้างไฟล์ PDF แยกแต่ละหน้าโดยคงเนื้อหาและการจัดรูปแบบเดิมไว้

วิธีการแยกเอกสารขนาดใหญ่อย่างมีประสิทธิภาพ (split large document)

เมื่อประมวลผลเอกสารขนาดใหญ่มาก, ให้แยกเป็นช่วงหน้าที่เล็กลง (เช่น 1‑100, 101‑200) เพื่อลดการใช้หน่วยความจำ. สร้าง SplitOptions แยกสำหรับแต่ละช่วง, รัน merger.split(options) อย่างต่อเนื่อง, และปิดอินสแตนซ์ Merger หลังจากแต่ละชุด. วิธีนี้ช่วยควบคุมการใช้ CPU และ I/O ให้เหมาะสม

วิธีการแยกหน้า PDF ที่เป็นเลขคี่ (split pdf odd pages)

เพื่อแยกเฉพาะหน้าที่เป็นเลขคี่จาก PDF, ตั้งค่าอ็อบเจกต์ SplitOptions ด้วย RangeMode.OddPages. กำหนดรูปแบบการตั้งชื่อเอาต์พุตและอาจระบุช่วงหน้าหากไม่ต้องการแยกทั้งเอกสาร. เรียก merger.split(options) แล้วไลบรารีจะสร้างไฟล์ที่มีเฉพาะหน้าที่เป็นเลขคี่เท่านั้น

การประยุกต์ใช้งานจริง

  1. Document Segmentation – แบ่งสัญญาเป็น PDF ระดับข้อเพื่อการตรวจสอบที่ง่ายขึ้น
  2. Report Management – แยกบทหรือภาคผนวกเฉพาะจากรายงานประจำปีที่ยาวมาก
  3. Presentation Preparation – แยกสไลด์แต่ละหน้าเพื่อการประชุมที่มุ่งเป้า

คุณยังสามารถผสานตรรกะนี้กับฐานข้อมูลหรือระบบจัดการเนื้อหาเพื่ออัตโนมัติขั้นตอนการทำงานได้อีกด้วย

พิจารณาด้านประสิทธิภาพ

  • Memory Management – เรียก merger.close() (หรือใช้ try‑with‑resources) หลังการประมวลผลเพื่อปล่อยตัวจัดการไฟล์
  • Selective Ranges – ขอเฉพาะหน้าที่ต้องการจริง ๆ เพื่อลดการใช้ I/O และ CPU

สรุป

คุณมีวิธีที่ชัดเจนและเป็นขั้นตอนเพื่อ แยกหน้าของเอกสาร Word (และรูปแบบที่รองรับอื่น ๆ) ด้วย GroupDocs.Merger สำหรับ Java ความสามารถนี้ช่วยทำให้กระบวนการจัดการเอกสารของคุณเป็นระบบและทำให้คุณสามารถส่งมอบเนื้อหาที่ผู้ใช้ต้องการได้อย่างแม่นยำ

ขั้นตอนต่อไป

  • ทดลองใช้ค่า RangeMode ต่าง ๆ (เช่น EvenPages, AllPages)
  • ผสานการแยกกับฟังก์ชัน merge เพื่อจัดลำดับหรือเชื่อมต่อหน้าที่แยกออกมาใหม่
  • สำรวจ API เต็มรูปแบบสำหรับเอกสารที่มีรหัสผ่าน, ลายน้ำ, และอื่น ๆ

คำถามที่พบบ่อย

Q: GroupDocs.Merger for Java คืออะไร?
A: GroupDocs.Merger for Java เป็นไลบรารีที่แข็งแกร่งซึ่งช่วยให้ทำการรวม, แยก, และจัดลำดับหน้าต่าง ๆ ได้หลายรูปแบบเอกสาร รวมถึง PDF, DOCX, และ PPTX

Q: ฉันสามารถใช้ GroupDocs.Merger กับภาษาโปรแกรมอื่นได้หรือไม่?
A: ใช่, มีความสามารถคล้ายกันสำหรับ .NET และ C++

Q: จะจัดการกับข้อยกเว้นระหว่างการประมวลผลเอกสารอย่างไร?
A: MergerException คือประเภทข้อยกเว้นที่ถูกโยนโดย GroupDocs.Merger เมื่อเกิดข้อผิดพลาดในการประมวลผล. ให้ห่อการเรียกในบล็อก try‑catch และตรวจสอบ MergerException เพื่อดูรายละเอียดของข้อผิดพลาด

Q: สามารถแยกเอกสารโดยไม่กรองหน้าเลขคี่/เลขคู่ได้หรือไม่?
A: แน่นอน — ตั้งค่า RangeMode.AllPages หรือไม่ระบุตัวกรองเพื่อแยกตามหมายเลขหน้าที่กำหนด

Q: ระบบต้องการอะไรบ้างสำหรับการใช้ GroupDocs.Merger?
A: Java 8 หรือสูงกว่าและ IDE ที่รองรับ; ไม่ต้องมี dependencies เนทีฟเพิ่มเติม

แหล่งข้อมูล


อัปเดตล่าสุด: 2026-07-25
ทดสอบกับ: GroupDocs.Merger รุ่นล่าสุด (Java)
ผู้เขียน: GroupDocs

บทแนะนำที่เกี่ยวข้อง