ในหนึ่งในโพสต์ก่อนหน้านี้ เราได้เรียนรู้วิธีการทางโปรแกรม แทรกวัตถุ OLE ในเอกสารด้วย C# วันนี้ ในบทความนี้ เราจะฝัง PDF และเอกสารอื่นๆ เป็นวัตถุ OLE ในเอกสาร Word, สเปรดชีต Excel, สไลด์นำเสนอ PowerPoint โดยใช้ Java

บทความนี้จะแนะนำคุณเกี่ยวกับ:

Java API สำหรับวัตถุ OLE

GroupDocs.Merger for Java

ขั้นตอนและตัวอย่างในบทความนี้ใช้ GroupDocs.Merger for Java เพื่อแทรกเอกสารลงในเอกสารอื่นๆ ผ่าน OLE (Object Linking and Embedding) API นี้ยังช่วยให้เรารวมและแยกเอกสารหลาย ๆ บรรทัดได้อย่างมีประสิทธิภาพด้วยโค้ด Java ขั้นต่ำ ก่อนดำเนินการต่อ จะเป็นการดีกว่าถ้าคุณเตรียมสภาพแวดล้อมด้วยวิธีที่เกี่ยวข้องใดๆ ของคุณ:

  1. ดาวน์โหลด API จากส่วน ดาวน์โหลด
  2. สำหรับโครงการที่ใช้ Maven ต่อไปนี้คือการกำหนดค่าสำหรับ pom.xml ของคุณ
<repository>
	<id>GroupDocsJavaAPI</id>
	<name>GroupDocs Java API</name>
	<url>http://repository.groupdocs.com/repo/</url>
</repository>
<dependency>
        <groupId>com.groupdocs</groupId>
        <artifactId>groupdocs-merger</artifactId>
        <version>20.7</version> 
</dependency>

แทรก PDF เป็นวัตถุ OLE ลงในเอกสาร MS Word โดยใช้ Java

แทรก PDF ในเอกสาร Word

ตัวอย่างขั้นตอนและโค้ดด้านล่างแทรกเอกสาร PDF ลงในเอกสาร Word เป็นวัตถุ OLE ใน Java โดยใช้ GroupDocs.Merger API

  1. สร้างอินสแตนซ์ของวัตถุ Merger ด้วยเส้นทางหรือสตรีมเอกสารการประมวลผลคำต้นทาง
  2. เริ่มต้น OleWordProcessingOptions ด้วยเส้นทางของเอกสาร PDF ที่จะฝังอยู่ในเอกสาร Word
  3. เรียกเมธอด importDocument ของคลาสการควบรวมกิจการ
  4. บันทึกเอกสารคำที่เป็นผลลัพธ์โดยเรียกเมธอด save
// ฝัง PDF ลงในเอกสาร Word เป็นวัตถุ OLE
int pageNumber = 1;
OleWordProcessingOptions oleWordsOptions = new OleWordProcessingOptions("PDF-document.pdf", pageNumber);
oleWordsOptions.setWidth(200); // Setting the width and height of embedded document
oleWordsOptions.setHeight(200);
// นำเข้า PDF ลงในเอกสาร Word
Merger merger = new Merger("document.docx"); // Source Word document
merger.importDocument(oleWordsOptions);
merger.save("output-document.docx");

แทรกเอกสาร Word เป็นวัตถุ OLE ลงในสเปรดชีต Excel โดยใช้ Java

แทรกไฟล์ Word ในสเปรดชีต Excel

สเปรดชีตยังสามารถฝังเอกสารอื่นๆ เช่น เอกสาร Word, สเปรดชีต, งานนำเสนอ, รูปภาพหรือคลิปเสียง ฯลฯ ที่นี่ ฉันกำลังเพิ่มเอกสาร Word ลงในสเปรดชีตเป็นวัตถุ OLE

  1. เริ่มต้นวัตถุคลาส OleSpreadsheetOptions โดยระบุเส้นทางของเอกสาร Word ที่จะฝังอยู่ในสเปรดชีต
  2. ตั้งค่าตัวเลือก เช่น ตำแหน่งแถวและคอลัมน์
  3. เริ่มต้นวัตถุคลาส Merger ด้วยเส้นทางของเอกสารสเปรดชีต
  4. เรียกใช้เมธอด importDocument โดยระบุตัวเลือกสเปรดชีต OLE ที่ตั้งไว้แล้ว
  5. บันทึกสเปรดชีตผลลัพธ์ที่มีเอกสาร Word ฝังอยู่โดยเรียกเมธอด save
// ฝังเอกสาร Word ลงในสเปรดชีต Excel เป็นวัตถุ OLE
int pageNumber = 1;
OleSpreadsheetOptions oleCellsOptions = new OleSpreadsheetOptions("document.docx", pageNumber);
oleCellsOptions.setRowIndex(2); // Set row & column number of Spreasheet to embedded document
oleCellsOptions.setColumnIndex(1);
// นำเข้าเอกสาร Word ลงในสเปรดชีต
Merger merger = new Merger("spreadsheet.xlsx"); // Source Spreadsheet
merger.importDocument(oleCellsOptions);
merger.save("output-spreadsheet.xlsx");

แทรกแผ่นงาน Excel เป็นวัตถุ OLE ในการนำเสนอโดยใช้ Java

แทรกแผ่นงาน Excel ใน PowerPoint

ในทำนองเดียวกัน หากเราต้องการเพิ่มเอกสารภายนอกใดๆ ลงในงานนำเสนอของเรา สามารถแทรกเอกสารเหล่านี้ในตำแหน่งที่แม่นยำด้วยโค้ด Java ไม่กี่บรรทัดที่กล่าวถึงด้านล่าง:

  1. เริ่มต้นวัตถุคลาส OlePresentationOptions และส่งเส้นทางของเอกสารสเปรดชีต
  2. ตั้งค่าตัวเลือกการนำเสนอ OLE เช่น พิกัด x และ y ความสูงและความกว้างสำหรับสเปรดชีตแบบฝังที่กำลังจะมีขึ้น
  3. สร้างอินสแตนซ์อ็อบเจ็กต์คลาส Merger ด้วยพาธเอกสารการนำเสนอเป็นพารามิเตอร์
  4. ฝังสเปรดชีตลงในงานนำเสนอโดยใช้เมธอด importDocument ของคลาส Merger
  5. เรียกใช้เมธอด save เพื่อรับไฟล์การนำเสนอที่เป็นผลลัพธ์
// ฝังสเปรดชีตลงในงานนำเสนอเป็นวัตถุ OLE
int pageNumber = 1;
OlePresentationOptions oleSlidesOptions = new OlePresentationOptions("spreadsheet.xlsx", pageNumber);
// กำหนดพิกัดและขนาด
oleSlidesOptions.setX(10);
oleSlidesOptions.setY(10);
oleSlidesOptions.setHeight(200);
oleSlidesOptions.setWidth(200);
// นำเข้าสเปรดชีตลงในงานนำเสนอ
Merger merger = new Merger("presentation.pptx");
merger.importDocument(oleSlidesOptions);
merger.save("output-presentation.pptx");

บทสรุป

เราได้เรียนรู้วิธีการแทรกวัตถุ OLE โดยทางโปรแกรมในเอกสาร Word, Excel และ Powerpoint โดยใช้ Java ข้อแตกต่างที่สำคัญในขณะที่ฝังเอกสารลงในเอกสารต้นฉบับประเภทต่างๆ คือการใช้คลาส OLE Options ที่เกี่ยวข้องเท่านั้น แค่นั้นแหละ.

หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับ Merger API สำหรับ Java โปรดไปที่ เอกสารประกอบ ในกรณีที่มีข้อสงสัย ทีมสนับสนุน GroupDocs ยินดีอย่างยิ่งที่จะอำนวยความสะดวกให้คุณที่ ฟอรัมสนับสนุนฟรี

ดูสิ่งนี้ด้วย