แทรกและผนวกเอกสาร

บางครั้งจำเป็นต้องรวมเอกสารหลายฉบับเป็นเอกสารเดียว คุณสามารถดำเนินการนี้ได้ด้วยตนเองหรือใช้คุณลักษณะการแทรกหรือต่อท้าย 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 เพื่อกำหนดว่าเนื้อหาที่เพิ่มจะปรากฏในหน้าเดียวกันหรือแยกเป็นเนื้อหาใหม่

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการผนวกเอกสารหนึ่งไปยังอีกเอกสารหนึ่งโดยป้องกันไม่ให้เนื้อหาแยกเป็นสองหน้า: