Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.
Aspose.Words ใช้เครื่องมือเค้าโครงหน้าของตัวเอง ก่อนที่จะเจาะลึกข้อมูลจำเพาะ ควรหารือเกี่ยวกับเอกสารในระดับสูงก่อน เมื่อคิดถึงเอกสาร ผู้ใช้มักจะนึกถึงแผ่นกระดาษจำนวนหนึ่งที่มีคำ รูปภาพ ตาราง และแผนภูมิ เอกสารอาจมีหลายประเภท เช่น ข้อความ สเปรดชีต สไลด์ แบบร่าง CAD ผังงาน ดังนั้นจึงสามารถมีเค้าโครงที่แตกต่างกันได้ แอปพลิเคชันส่วนใหญ่อนุญาตให้ส่งเอกสารไปยังเครื่องพิมพ์ นี่คือเวลาที่ผู้ใช้สามารถดูลักษณะที่ปรากฏที่ต้องการขั้นสุดท้ายของเอกสารได้จริง
แอปพลิเคชันดูหรือเผยแพร่เอกสารต่างๆ ช่วยให้ผู้ใช้สามารถเปิด (Adobe Acrobat, XPS Viewer) และบางครั้งแก้ไขเอกสาร (Adobe InDesign) ในรูปแบบเฉพาะได้ โดยทั่วไปแอปพลิเคชันเหล่านี้จะสร้างเอกสารรูปแบบที่เรียกว่า “หน้าคงที่” รูปแบบเอกสารดังกล่าวจะอธิบายได้อย่างแม่นยำว่าเนื้อหาของเอกสารถูกวางไว้ที่ใดในทุกหน้า ภายใน รูปแบบ PDF หรือ XPS จะมีคำอธิบายของทุกหน้า เช่นเดียวกับคำแนะนำในการวาดภาพ โดยระบุเค้าโครงของเนื้อหาบนหน้า ซึ่งคล้ายกับรูปแบบรูปภาพ โดยอธิบายตำแหน่งที่เนื้อหาแสดงในรูปแบบแรสเตอร์หรือเวกเตอร์
ในทางตรงกันข้าม แอปพลิเคชันแก้ไขข้อความบางแอปพลิเคชันไม่รองรับการดูหน้าเอกสาร ตัวอย่างเช่น Microsoft Notepad รองรับฟังก์ชันน้อยมากนอกเหนือจากการแสดง แก้ไข และพิมพ์ข้อความ ข้อสังเกตที่สำคัญที่นี่คือแอปพลิเคชันดังกล่าวไม่สามารถแสดงหน้าต่างๆ ของเอกสารหรือบอกผู้ใช้ว่าจะพิมพ์กี่หน้า ทำได้เพียงอนุญาตให้ดูเนื้อหาเอกสารเท่านั้น เอกสารสามารถบันทึกในรูปแบบข้อความธรรมดาและสามารถเปิดได้โดยแอปพลิเคชันอื่น ๆ อีกมากมาย การใช้แอปพลิเคชันที่อนุญาตให้ดูเนื้อหาไบนารีของไฟล์ที่กำหนดเองจะทำให้สามารถดูสิ่งที่เก็บไว้ในไฟล์เอกสารได้ - มันเป็นเพียงข้อความธรรมดาไม่มีอะไรอื่นในนั้น
แอปพลิเคชันแก้ไขข้อความที่ซับซ้อนกว่าเล็กน้อย เช่น Microsoft WordPad จะบันทึกเอกสารในรูปแบบ Rich Text Format (RTF) ซึ่งรองรับฟังก์ชันการจัดรูปแบบเพิ่มเติม เช่น การแทรกรูปภาพ การจัดรูปแบบอักขระ ระยะขอบของย่อหน้า และการเว้นวรรค อย่างไรก็ตาม รูปแบบ RTF ยังมีเฉพาะเนื้อหาของเอกสารเท่านั้น โดยไม่มีข้อมูลเกี่ยวกับหน้าต่างๆ
Microsoft Word เป็นแอปพลิเคชันแก้ไขข้อความที่ทันสมัยที่สุดใน Windows ในปัจจุบัน โดยจัดรูปแบบไฟล์ในรูปแบบ DOCX ซึ่งอธิบายเนื้อหาของเอกสารได้อย่างยืดหยุ่นและกว้างขวาง ช่วยให้ผู้ใช้สามารถระบุขนาดหน้า การวางแนวสำหรับส่วนของเอกสาร และเป็นแอปพลิเคชัน WYSIWYG แม้กระทั่งแสดงหน้าเอกสารบนหน้าจอ อย่างไรก็ตาม ยังไม่มีข้อมูลเกี่ยวกับวิธีแสดงเนื้อหาของเอกสารในหน้าที่มีอยู่ในไฟล์เอกสาร ไฟล์เอกสารอธิบายเฉพาะเนื้อหาและความสัมพันธ์ของออบเจ็กต์เอกสารต่อกัน พร้อมด้วยข้อจำกัดทางเรขาคณิตบางประการ ด้วยเหตุนี้ ก่อนที่จะแสดงเอกสาร Microsoft Word จะคำนวณข้อมูลนั้นเอง นี่คือที่มาของเค้าโครงหน้ากระดาษ
เค้าโครงหน้าเอกสารคือโครงสร้างข้อมูล ซึ่งอธิบายตำแหน่งของออบเจ็กต์เฉพาะบนหน้าสำหรับออบเจ็กต์เอกสารทั้งหมด นอกจากนี้ เนื่องจากวัตถุมีคุณสมบัติที่ส่งผลต่อลักษณะที่ปรากฏ เช่น ขนาดแบบอักษร การแรเงา หรือเอฟเฟ็กต์การวาด คุณไม่เพียงแต่ต้องรู้ว่าวัตถุอยู่ที่ไหน แต่ยังต้องทราบด้วยว่าวัตถุนั้นครอบครองพื้นที่ใด และจะหรือไม่ นำไปใช้กับหลายหน้าเพื่อให้วัตถุอื่นไม่ทับซ้อนในพื้นที่เดียวกัน
Aspose.Words ใช้ฟังก์ชันเค้าโครงหน้าภายใน ทำให้สามารถสร้างรูปแบบหน้าคงที่ทั้งหมด เช่น PDF, XPS และรูปแบบรูปภาพต่างๆ หากไม่มีเค้าโครงหน้า ข้อมูลที่จัดเก็บไว้ในไฟล์เอกสารหน้าคงที่จะไม่สามารถใช้ได้ และรูปแบบเหล่านี้ทั้งหมดจะไม่ได้รับการสนับสนุน
ความสัมพันธ์ระหว่างเอกสารและเค้าโครงหน้าค่อนข้างง่าย ในขณะที่เอกสารอธิบายเนื้อหา เค้าโครงหน้าที่เกี่ยวข้องจะอธิบายเรขาคณิตของเนื้อหานั้น โปรดทราบว่าเค้าโครงหน้าไม่สามารถมีอยู่ได้หากไม่มีเอกสาร เนื่องจากจะไม่มีเนื้อหาสำหรับการคำนวณเรขาคณิต แต่เอกสารสามารถมีอยู่ได้หากไม่มีเค้าโครงหน้า ตัวอย่างเช่น เมื่อแปลงเอกสาร DOCX เป็นเอกสาร RTF โดยทั่วไปไม่จำเป็นต้องทราบเรขาคณิต เนื่องจากไม่มีรูปแบบใดที่จะจัดเก็บไว้
การสร้างเค้าโครงหน้าอาจเป็นขั้นตอนที่มีค่าใช้จ่ายสูง ทั้งในด้านความเร็วและหน่วยความจำ นี่เป็นเพราะสาเหตุหลายประการ:
NUMPAGES สร้างการพึ่งพาแบบเรียกซ้ำสำหรับค่าคุณสมบัติในอนาคต ซึ่งไม่พร้อมใช้งานในขณะที่คำนวณ สิ่งนี้นำไปสู่การคำนวณซ้ำ ๆ และเพิ่มเวลาในการคำนวณเนื่องจากเหตุผลที่กล่าวมาข้างต้น Aspose.Words จะสร้างเค้าโครงหน้าเมื่อจำเป็นเท่านั้น เหตุผลทั่วไปสำหรับสิ่งนี้คือการร้องขอให้แสดงหน้าเอกสารหรือเพื่อให้ได้ค่าฟิลด์ที่ขึ้นอยู่กับข้อมูลที่มีอยู่ในเค้าโครงหน้า เหตุผลที่ชัดเจนน้อยกว่าอาจเป็นเพราะการส่งออกเอกสารเป็น HTML แม้ว่า HTML จะไม่ใช่รูปแบบหน้าคงที่และไม่ได้อธิบายเรขาคณิตของออบเจ็กต์เนื้อหา แต่ก็ยังรองรับรูปภาพ รูปภาพดังกล่าวอาจอยู่ในรูปแบบของรูปร่างที่สร้างในรูปแบบ Microsoft Word โดยมีข้อความอยู่ข้างใน ตัวอย่างเช่น แผนภูมิที่มีป้ายกำกับแกนสามารถส่งออกเป็นรูปภาพเป็น HTML ได้ แต่ก่อนที่จะดำเนินการดังกล่าวได้ Aspose.Words จำเป็นต้องแสดงรูปภาพนั้น และด้วยเหตุนี้จึงต้องรู้ว่าจะแสดงป้ายกำกับที่ใด ดูตัวอย่างแผนภูมิด้านล่าง:
นอกเหนือจากการจัดการข้อมูลทางเรขาคณิตแล้ว เค้าโครงหน้ายังรับผิดชอบในการคำนวณสีและรูปแบบเส้นขอบอีกด้วย ใน Microsoft Word สีข้อความสามารถระบุได้โดยอัตโนมัติ ซึ่งหมายความว่าการเลือกสีควรเป็นไปตามสีแรเงาของเซลล์หรือย่อหน้า หรือขึ้นอยู่กับสีของหน้าที่ข้อความปรากฏ
เค้าโครงหน้าจะคำนวณตำแหน่งที่ข้อความจะปรากฏและเนื้อหาใดที่จะแสดงผลด้านหลัง ทำให้สามารถคำนวณสีได้ มีการคำนวณเฉพาะอื่นๆ ที่ดำเนินการโดยเค้าโครงหน้า ตัวอย่างเช่น เส้นขอบแนวนอนในตารางขึ้นอยู่กับว่าแถวของตารางอยู่ท้ายคอลัมน์ของข้อความหรือไม่ และแบ่งข้ามคอลัมน์หรือไม่ หากแถวถูกแสดงผลครั้งสุดท้ายในคอลัมน์ เส้นขอบด้านล่างจะถูกใช้แทนแนวนอน

ใน Aspose.Words ผู้ใช้สามารถขอได้ว่าจะสร้างเค้าโครงหน้าใหม่หรืออัปเดตเค้าโครงหน้าที่มีอยู่ ทั้งสองอย่างนี้สามารถทำได้โดยวิธี update_page_layout ซึ่งจัดทำโดยคลาส Document หากไม่มีเค้าโครงหน้า แต่จำเป็นต้องใช้ (เช่น เมื่อส่งออกเอกสารเป็นรูปแบบหน้าคงที่) Aspose.Words จะเรียกใช้วิธีนี้โดยอัตโนมัติ อย่างไรก็ตาม หากมีเค้าโครงหน้าอยู่แล้ว Aspose.Words จะใช้เค้าโครงหน้าที่มีอยู่แล้ว เพื่อหลีกเลี่ยงการใช้ทรัพยากรที่จำเป็นในการอัปเดต ในกรณีนี้ ผู้ใช้จำเป็นต้องเรียกใช้เมธอด update_page_layout เพื่อให้แน่ใจว่าเค้าโครงหน้าเป็นข้อมูลล่าสุดกับโมเดลเอกสาร
กระบวนการสร้างเค้าโครงหน้าประกอบด้วยขั้นตอนต่อไปนี้:
โปรดทราบว่าเค้าโครงหน้าเป็นโครงสร้างไดนามิก ซึ่งสามารถสร้างใหม่ได้บางส่วน สิ่งนี้จำเป็นอย่างยิ่งเมื่อไม่สามารถคำนวณค่าฟิลด์โดยไม่ต้องสร้างโครงสร้างโครงร่างเอกสารใหม่ ฟิลด์สามารถอ้างอิงตำแหน่งของออบเจ็กต์บนเพจได้ และในเวลาเดียวกัน ค่าของฟิลด์เองก็ถูกแสดงผลบนเพจด้วย ซึ่งส่งผลต่อตำแหน่งของออบเจ็กต์ที่อ้างอิง ไม่สามารถสร้างเค้าโครงหน้าได้ในครั้งเดียว เนื่องจากค่าฟิลด์อาจยังไม่มีให้ใช้งานในขณะที่วางตำแหน่งบนเพจ
พิจารณาสถานการณ์ทั่วไปเมื่อช่อง NUMPAGES ปรากฏในส่วนท้ายของหน้าแรกในเอกสาร ค่าของฟิลด์นี้คือจำนวนหน้าทั้งหมด ในการวางตำแหน่งฟิลด์บนเพจ ควรทราบค่าของฟิลด์นั้น หากขณะนี้มีเพียงหน้าแรกที่กำลังสร้างอยู่ ยังไม่ทราบจำนวนหน้าทั้งหมด ในกรณีนี้ โครงร่างเพจต้องใช้ค่าเริ่มต้น และกลับมาที่ฟิลด์นั้นในภายหลัง และเปลี่ยนค่าตามการคำนวณจริง อย่างไรก็ตาม การเปลี่ยนแปลงค่าฟิลด์อาจส่งผลต่อเนื้อหาเอกสารอื่นๆ บนเพจ และท้ายที่สุดอาจทำให้เพจใหม่ถูกต่อท้ายหรือเพจที่มีอยู่ถูกลบออก ซึ่งจะทำให้ค่าที่คำนวณล้าสมัย ปัญหานี้สามารถแก้ไขได้ด้วยการทำให้สามารถอัปเดตเค้าโครงหน้าที่มีอยู่ได้
เมื่อสร้างเลย์เอาต์ คุณยังสามารถตั้งค่าคุณสมบัติ LayoutOptions ที่ส่งผลต่อเอาต์พุตของเอกสารบนเพจต่างๆ ได้
หลังจากสร้างเค้าโครงหน้าและคำนวณเรขาคณิตของวัตถุและตำแหน่งบนหน้าแล้ว เอกสารสามารถบันทึกในรูปแบบหน้าคงที่ที่ Aspose.Words รองรับ เมื่อบันทึกเอกสารเป็นรูปแบบหน้าคงที่ คุณสามารถใช้ตัวเลือกการแสดงผลทั่วไปสำหรับรูปแบบเหล่านี้ทั้งหมดได้ พวกเขาอนุญาตให้ควบคุม:
ตัวอย่างด้านล่างสาธิตวิธีการบันทึกเอกสารเป็นรูปแบบ JPEG โดยใช้วิธี save และตัวเลือกการแสดงผล:
# Open the document
doc = aw.Document(docs_base.my_dir + "Rendering.docx")
# Save as a JPEG image file with default options
doc.save(docs_base.artifacts_dir + "Rendering.JpegDefaultOptions.jpg")
# Save document to stream as a JPEG with default options
docStream = io.BytesIO()
doc.save(docStream, aw.SaveFormat.JPEG)
# Rewind the stream position back to the beginning, ready for use
docStream.seek(0)
# Save document to a JPEG image with specified options.
# Render the third page only and set the JPEG quality to 80%
# In this case we need to pass the desired SaveFormat to the ImageSaveOptions constructor
# to signal what type of image to save as.
imageOptions = aw.saving.ImageSaveOptions(aw.SaveFormat.JPEG)
imageOptions.page_index = 2
imageOptions.page_count = 1
imageOptions.jpeg_quality = 80
doc.save(docs_base.artifacts_dir + "Rendering.JpegCustomOptions.jpg", imageOptions)Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.