การทำงานกับส่วนหัวและส่วนท้าย
Aspose.Words อนุญาตให้ผู้ใช้ทำงานกับส่วนหัวและส่วนท้ายในเอกสาร ส่วนหัวคือข้อความที่อยู่ด้านบนของหน้า และส่วนท้ายคือข้อความที่ด้านล่างของหน้า โดยทั่วไป พื้นที่เหล่านี้จะใช้ในการแทรกข้อมูลที่ควรจะทำซ้ำบนทั้งหมดหรือบางหน้าของเอกสาร เช่น หมายเลขหน้า วันที่สร้าง ข้อมูลบริษัท และอื่นๆ
สร้างส่วนหัวหรือส่วนท้ายโดยใช้ DocumentBuilder
หากคุณต้องการเพิ่มส่วนหัวหรือส่วนท้ายของเอกสารโดยทางโปรแกรม วิธีที่ง่ายที่สุดคือใช้คลาส DocumentBuilder ในการดำเนินการ
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการเพิ่มส่วนหัวและส่วนท้ายสำหรับหน้าเอกสาร:
ระบุตัวเลือกส่วนหัวหรือส่วนท้าย
เมื่อคุณเพิ่มส่วนหัวหรือส่วนท้ายลงในเอกสาร คุณสามารถตั้งค่าคุณสมบัติขั้นสูงบางอย่างได้ Aspose.Words มอบคลาส HeaderFooter และ HeaderFooterCollection ให้กับผู้ใช้ รวมถึงการแจงนับ HeaderFooterType ที่ให้คุณควบคุมกระบวนการปรับแต่งส่วนหัวและส่วนท้ายได้มากขึ้น
ระบุประเภทส่วนหัวหรือส่วนท้าย
คุณสามารถระบุประเภทส่วนหัวที่แตกต่างกันได้สามประเภทและประเภทส่วนท้ายที่แตกต่างกันสามประเภทสำหรับเอกสารเดียว:
- ส่วนหัวและ/หรือส่วนท้ายของหน้าแรก
- ส่วนหัวและ/หรือส่วนท้ายสำหรับหน้าคู่
- ส่วนหัวและ/หรือส่วนท้ายสำหรับหน้าคี่
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการเพิ่มส่วนหัวสำหรับหน้าเอกสารคี่:
ระบุว่าจะแสดงส่วนหัวหรือส่วนท้ายที่แตกต่างกันสำหรับหน้าแรกหรือไม่
ตามที่กล่าวไว้ข้างต้น คุณยังสามารถตั้งค่าส่วนหัวหรือส่วนท้ายอื่นสำหรับหน้าแรกได้ ในการดำเนินการนี้ คุณจะต้องตั้งค่าแฟล็ก different_first_page_header_footer เป็น true
จากนั้นระบุค่า HeaderFirst หรือ FooterFirst
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการตั้งค่าส่วนหัวสำหรับหน้าแรกเท่านั้น:
# For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Python-via-.NET.git. | |
doc = aw.Document() | |
builder = aw.DocumentBuilder(doc) | |
builder.page_setup.different_first_page_header_footer = True | |
builder.move_to_header_footer(aw.HeaderFooterType.HEADER_FIRST) | |
builder.write("Header for the first page.") | |
builder.move_to_header_footer(aw.HeaderFooterType.FOOTER_FIRST) | |
builder.write("Footer for the first page.") | |
builder.move_to_section(0) | |
builder.writeln("Page 1") | |
builder.insert_break(aw.BreakType.PAGE_BREAK) | |
builder.writeln("Page 2") | |
doc.save(ARTIFACTS_DIR + "WorkingWithHeadersAndFooters.different_first_page.docx") |
ระบุว่าจะแสดงส่วนหัวหรือส่วนท้ายที่แตกต่างกันสำหรับหน้าคี่หรือคู่
ถัดไป คุณจะต้องตั้งค่าส่วนหัวหรือส่วนท้ายที่แตกต่างกันสำหรับหน้าคี่และหน้าคู่ในเอกสาร ในการดำเนินการนี้ คุณต้องตั้งค่าแฟล็ก odd_and_even_pages_header_footer เป็น true
จากนั้นระบุค่า HeaderPrimary และ HeaderEven หรือ FooterPrimary และ FooterEven
# For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Python-via-.NET.git. | |
doc = aw.Document() | |
builder = aw.DocumentBuilder(doc) | |
builder.page_setup.odd_and_even_pages_header_footer = True | |
builder.move_to_header_footer(aw.HeaderFooterType.HEADER_EVEN) | |
builder.write("Header for even pages.") | |
builder.move_to_header_footer(aw.HeaderFooterType.HEADER_PRIMARY) | |
builder.write("Header for odd pages.") | |
builder.move_to_header_footer(aw.HeaderFooterType.FOOTER_EVEN) | |
builder.write("Footer for even pages.") | |
builder.move_to_header_footer(aw.HeaderFooterType.FOOTER_PRIMARY) | |
builder.write("Footer for odd pages.") | |
builder.move_to_section(0) | |
builder.writeln("Page 1") | |
builder.insert_break(aw.BreakType.PAGE_BREAK) | |
builder.writeln("Page 2") | |
doc.save(ARTIFACTS_DIR + "WorkingWithHeadersAndFooters.odd_even_pages.docx") |
แทรกรูปภาพในตำแหน่งที่แน่นอนลงในส่วนหัว
หากต้องการวางรูปภาพในส่วนหัวหรือส่วนท้าย ให้ใช้ประเภทส่วนหัว HeaderPrimary หรือประเภทส่วนท้าย FooterPrimary และวิธีการ insert_image
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการเพิ่มรูปภาพในส่วนหัว:
# For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Python-via-.NET.git. | |
doc = aw.Document() | |
builder = aw.DocumentBuilder(doc) | |
builder.move_to_header_footer(aw.HeaderFooterType.HEADER_PRIMARY) | |
builder.insert_image(IMAGES_DIR + "Logo.jpg", | |
aw.drawing.RelativeHorizontalPosition.RIGHT_MARGIN, | |
10, aw.drawing.RelativeVerticalPosition.PAGE, 10, 50, 50, | |
aw.drawing.WrapType.THROUGH) | |
doc.save(ARTIFACTS_DIR + "WorkingWithHeadersAndFooters.insert_image.docx") |
ตั้งค่าคุณสมบัติแบบอักษรและย่อหน้าสำหรับข้อความส่วนหัวหรือส่วนท้าย
ด้วย Aspose.Words คุณสามารถตั้งค่าคุณสมบัติแบบอักษรและย่อหน้า ใช้ประเภทส่วนหัว HeaderPrimary หรือประเภทส่วนท้าย FooterPrimary รวมถึงวิธีการและคุณสมบัติสำหรับการทำงานกับแบบอักษรและย่อหน้าที่คุณใช้สำหรับเนื้อหาของเอกสาร
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการตั้งค่าข้อความในส่วนหัวเป็น Arial ตัวหนา ขนาด 14 และการจัดกึ่งกลาง:
# For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Python-via-.NET.git. | |
doc = aw.Document() | |
builder = aw.DocumentBuilder(doc) | |
builder.move_to_header_footer(aw.HeaderFooterType.HEADER_PRIMARY) | |
builder.paragraph_format.alignment = aw.ParagraphAlignment.CENTER | |
builder.font.name = "Arial" | |
builder.font.bold = True | |
builder.font.size = 14 | |
builder.write("Header for pages.") | |
doc.save(ARTIFACTS_DIR + "WorkingWithHeadersAndFooters.font_props.docx") |
แทรกหมายเลขหน้าลงในส่วนหัวหรือส่วนท้าย
หากจำเป็น คุณสามารถเพิ่มหมายเลขหน้าลงในส่วนหัวหรือส่วนท้ายได้ เมื่อต้องการทำเช่นนี้ ให้ใช้ประเภทส่วนหัว HeaderPrimary หรือประเภทส่วนท้าย FooterPrimary และวิธีการ insert_field เพื่อเพิ่มฟิลด์ที่จำเป็น
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการเพิ่มหมายเลขหน้าในส่วนท้ายทางด้านขวา:
# For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Python-via-.NET.git. | |
doc = aw.Document() | |
builder = aw.DocumentBuilder(doc) | |
builder.move_to_header_footer(aw.HeaderFooterType.FOOTER_PRIMARY) | |
builder.paragraph_format.alignment = aw.ParagraphAlignment.CENTER | |
builder.write("Page ") | |
builder.insert_field("PAGE", "") | |
builder.write(" of ") | |
builder.insert_field("NUMPAGES", "") | |
doc.save(ARTIFACTS_DIR + "WorkingWithHeadersAndFooters.page_numbers.docx") |
ใช้ส่วนหัวหรือส่วนท้ายที่กำหนดไว้ในส่วนก่อนหน้า
หากคุณต้องการคัดลอกส่วนหัวหรือส่วนท้ายจากส่วนก่อนหน้า คุณก็สามารถทำได้เช่นกัน
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการคัดลอกส่วนหัวหรือส่วนท้ายจากส่วนก่อนหน้า:
ตรวจสอบให้แน่ใจว่าส่วนหัวหรือส่วนท้ายปรากฏเมื่อใช้การวางแนวหน้าและขนาดหน้าที่แตกต่างกัน
Aspose.Words ช่วยให้คุณกำหนดลักษณะที่ปรากฏของส่วนหัวหรือส่วนท้ายเมื่อใช้การวางแนวและขนาดหน้าที่แตกต่างกัน
ตัวอย่างต่อไปนี้แสดงวิธีการทำเช่นนี้:
วิธีลบเฉพาะส่วนหัวหรือส่วนท้ายเท่านั้น
แต่ละส่วนในเอกสารสามารถมีส่วนหัวได้สูงสุดสามส่วนหัวและส่วนท้ายสูงสุดสามส่วน (สำหรับหน้าแรก คู่ และหน้าคี่) หากคุณต้องการลบส่วนหัวหรือส่วนท้ายทั้งหมดในเอกสาร คุณต้องวนซ้ำส่วนทั้งหมดและลบโหนดส่วนหัวหรือโหนดส่วนท้ายที่เกี่ยวข้องแต่ละรายการออก
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการลบส่วนท้ายทั้งหมดออกจากทุกส่วนแต่ปล่อยให้ส่วนหัวไม่เสียหาย คุณสามารถลบเฉพาะส่วนหัวได้ในลักษณะเดียวกัน: