แทรกและผนวกเอกสาร
บางครั้งจำเป็นต้องรวมเอกสารหลายฉบับเป็นเอกสารเดียว คุณสามารถดำเนินการนี้ได้ด้วยตนเองหรือใช้คุณลักษณะการแทรกหรือต่อท้าย Aspose.Words
การแทรกช่วยให้คุณสามารถแทรกเนื้อหาของเอกสารที่สร้างไว้ก่อนหน้านี้ลงในเอกสารใหม่หรือที่มีอยู่ได้
ในทางกลับกัน คุณลักษณะการผนวกช่วยให้คุณสามารถเพิ่มเอกสารได้เฉพาะที่ส่วนท้ายของเอกสารอื่นเท่านั้น
บทความนี้จะอธิบายวิธีการแทรกหรือผนวกเอกสารเข้ากับเอกสารอื่นด้วยวิธีต่างๆ และอธิบายคุณสมบัติทั่วไปที่คุณสามารถใช้ได้ในขณะที่แทรกหรือผนวกเอกสาร
แทรกเอกสาร
ตามที่กล่าวไว้ข้างต้น ใน Aspose.Words เอกสารจะแสดงเป็นแผนผังของโหนด และการดำเนินการแทรกเอกสารหนึ่งไปยังอีกเอกสารหนึ่งคือการคัดลอกโหนดจากแผนผังเอกสารแรกไปยังเอกสารที่สอง
คุณสามารถแทรกเอกสารในตำแหน่งต่างๆ ได้หลายวิธี ตัวอย่างเช่น คุณสามารถแทรกเอกสารผ่านการดำเนินการแทนที่ ฟิลด์ผสานระหว่างการดำเนินการผสาน หรือผ่านทางบุ๊กมาร์ก
คุณยังสามารถใช้วิธี InsertDocument หรือ InsertDocumentInline ซึ่งคล้ายกับการแทรกเอกสารใน Microsoft Word เพื่อแทรกเอกสารทั้งหมดที่ตำแหน่งเคอร์เซอร์ปัจจุบันโดยไม่ต้องนำเข้าก่อนหน้านี้
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการแทรกเอกสารโดยใช้วิธี InsertDocument:
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการแทรกเอกสารโดยใช้วิธี InsertDocumentInline:
ส่วนย่อยต่อไปนี้จะอธิบายตัวเลือกต่างๆ ที่คุณสามารถแทรกเอกสารหนึ่งลงในอีกเอกสารหนึ่งได้
แทรกเอกสารระหว่างการค้นหาและแทนที่การดำเนินการ
คุณสามารถแทรกเอกสารขณะดำเนินการค้นหาและแทนที่ได้ ตัวอย่างเช่น เอกสารสามารถมีย่อหน้าที่มีข้อความ [บทนำ] และ [บทสรุป] แต่ในเอกสารฉบับสุดท้าย คุณจะต้องแทนที่ย่อหน้าเหล่านั้นด้วยเนื้อหาที่ได้รับจากเอกสารภายนอกอื่น เพื่อให้บรรลุเป้าหมายดังกล่าว คุณจะต้องสร้างตัวจัดการสำหรับเหตุการณ์แทนที่
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการสร้างตัวจัดการสำหรับเหตุการณ์การแทนที่เพื่อใช้ในภายหลังในกระบวนการแทรก:
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการแทรกเนื้อหาของเอกสารหนึ่งไปยังอีกเอกสารหนึ่งในระหว่างการค้นหาและแทนที่:
แทรกเอกสารระหว่างการดำเนินการ Mail Merge
คุณสามารถแทรกเอกสารลงในช่องผสานระหว่างการดำเนินการ Mail Merge ได้ ตัวอย่างเช่น เทมเพลต Mail Merge สามารถมีช่องผสาน เช่น [สรุป] แต่ในเอกสารขั้นสุดท้าย คุณต้องแทรกเนื้อหาที่ได้รับจากเอกสารภายนอกอื่นลงในช่องผสานนี้ เพื่อให้บรรลุเป้าหมายดังกล่าว คุณจะต้องสร้างตัวจัดการสำหรับเหตุการณ์การรวม
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการสร้างตัวจัดการสำหรับเหตุการณ์การรวมเพื่อใช้ในภายหลังในกระบวนการแทรก:
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการแทรกเอกสารลงในฟิลด์ผสานโดยใช้ตัวจัดการที่สร้างขึ้น:
แทรกเอกสารที่บุ๊กมาร์ก
คุณสามารถนำเข้าไฟล์ข้อความลงในเอกสารและแทรกไว้หลังบุ๊กมาร์กที่คุณกำหนดไว้ในเอกสารได้ เมื่อต้องการทำเช่นนี้ ให้สร้างย่อหน้าบุ๊กมาร์กที่คุณต้องการแทรกเอกสาร
ตัวอย่างการเข้ารหัสต่อไปนี้แสดงวิธีการแทรกเนื้อหาของเอกสารหนึ่งไปยังบุ๊กมาร์กในเอกสารอื่น:
ผนวกเอกสาร
คุณอาจมีกรณีการใช้งานที่คุณต้องรวมหน้าเพิ่มเติมจากเอกสารต่อท้ายเอกสารที่มีอยู่ ในการดำเนินการนี้คุณเพียงแค่ต้องเรียกใช้เมธอด AppendDocument เพื่อเพิ่มเอกสารต่อท้ายเอกสารอื่น
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการผนวกเอกสารต่อท้ายเอกสารอื่น:
นำเข้าและแทรกโหนดด้วยตนเอง
Aspose.Words ช่วยให้คุณสามารถแทรกและต่อท้ายเอกสารโดยอัตโนมัติ โดยไม่ต้องมีข้อกำหนดการนำเข้าใดๆ ก่อนหน้านี้ อย่างไรก็ตาม หากคุณต้องการแทรกหรือต่อท้ายโหนดเฉพาะของเอกสารของคุณ เช่น ส่วนหรือย่อหน้า คุณต้องนำเข้าโหนดนี้ด้วยตนเองก่อน
เมื่อคุณต้องการแทรกหรือต่อท้ายส่วนหรือย่อหน้าหนึ่งเข้ากับอีกส่วนหนึ่ง คุณจะต้องนำเข้าโหนดของโครงสร้างโหนดเอกสารแรกไปยังส่วนที่สองโดยใช้วิธี ImportNode หลังจากนำเข้าโหนดของคุณแล้ว คุณต้องใช้วิธี InsertAfter / InsertBefore เพื่อแทรกโหนดใหม่หลัง/ก่อนโหนดอ้างอิง สิ่งนี้ช่วยให้คุณปรับแต่งกระบวนการแทรกได้โดยการนำเข้าโหนดจากเอกสารและแทรกในตำแหน่งที่กำหนด
คุณยังสามารถใช้วิธี AppendChild เพื่อเพิ่มโหนดที่ระบุใหม่ไปที่ส่วนท้ายของรายการโหนดย่อยได้ เช่น หากคุณต้องการต่อท้ายเนื้อหาในระดับย่อหน้า แทนที่จะเป็นระดับส่วน
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการนำเข้าโหนดด้วยตนเองและแทรกไว้หลังโหนดเฉพาะโดยใช้วิธี InsertAfter:
เนื้อหาจะถูกนำเข้าไปยังส่วนเอกสารปลายทางทีละส่วน ซึ่งหมายความว่าการตั้งค่า เช่น การตั้งค่าหน้าและส่วนหัวหรือส่วนท้าย จะถูกรักษาไว้ในระหว่างการนำเข้า นอกจากนี้ โปรดทราบว่าคุณสามารถกำหนดการตั้งค่าการจัดรูปแบบได้เมื่อคุณแทรกหรือต่อท้ายเอกสารเพื่อระบุวิธีการรวมเอกสารทั้งสองเข้าด้วยกัน
คุณสมบัติทั่วไปสำหรับการแทรกและผนวกเอกสาร
ทั้งวิธี InsertDocument และ AppendDocument ยอมรับ ImportFormatMode และ ImportFormatOptions เป็นพารามิเตอร์อินพุต ImportFormatMode ช่วยให้คุณควบคุมวิธีการผสานการจัดรูปแบบเอกสารเมื่อคุณนำเข้าเนื้อหาจากเอกสารหนึ่งไปยังอีกเอกสารหนึ่งโดยการเลือกโหมดรูปแบบที่แตกต่างกัน เช่น UseDestinationStyles, KeepSourceFormatting และ KeepDifferentStyles ImportFormatOptions ให้คุณเลือกตัวเลือกการนำเข้าต่างๆ เช่น IgnoreHeaderFooter, IgnoreTextBoxes, KeepSourceNumbering, MergePastedLists และ SmartStyleBehavior
Aspose.Words ช่วยให้คุณปรับการแสดงภาพของเอกสารผลลัพธ์เมื่อมีการเพิ่มเอกสารสองฉบับเข้าด้วยกันในการแทรกหรือผนวกโดยใช้คุณสมบัติ Section และ PageSetup คุณสมบัติ PageSetup มีแอตทริบิวต์ทั้งหมดของส่วน เช่น SectionStart, RestartPageNumbering, PageStartingNumber, Orientation และอื่นๆ กรณีการใช้งานที่พบบ่อยที่สุดคือการตั้งค่าคุณสมบัติ SectionStart เพื่อกำหนดว่าเนื้อหาที่เพิ่มจะปรากฏในหน้าเดียวกันหรือแยกเป็นเนื้อหาใหม่
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการผนวกเอกสารหนึ่งไปยังอีกเอกสารหนึ่งโดยป้องกันไม่ให้เนื้อหาแยกเป็นสองหน้า: