ตารางมักใช้ในเอกสาร Word เพื่อจัดระเบียบข้อมูลในโครงสร้างแบบกริด ช่วยให้คุณสามารถสรุปข้อมูลในรูปแบบของแถวและคอลัมน์ ในบทความนี้ คุณจะได้เรียนรู้วิธีสร้างตารางในเอกสาร Word โดยทางโปรแกรมโดยใช้ Python นอกจากนี้ บทความจะกล่าวถึงวิธีการสร้างตารางที่ซ้อนกันหรือโคลนตารางที่มีอยู่ในเอกสาร Word
- Python Library เพื่อสร้างตารางในเอกสาร Word
- สร้างตารางในเอกสาร Word
- สร้างตารางที่ซ้อนกันในเอกสาร Word
- โคลนตารางที่มีอยู่ในเอกสาร Word
Python Library เพื่อสร้างตารางในเอกสาร Word
ในการทำงานกับตารางในเอกสาร Word เราจะใช้ Aspose.Words for Python ไลบรารีได้รับการออกแบบมาเพื่อสร้างและจัดการเอกสาร Word แบบไดนามิกจากภายในแอปพลิเคชัน Python คุณสามารถติดตั้งไลบรารีได้จาก PyPI โดยใช้คำสั่ง pip ต่อไปนี้
pip install aspose-words
สร้างตารางในเอกสาร Word ด้วย Python
ต่อไปนี้เป็นขั้นตอนในการสร้างตารางในเอกสาร Word DOCX โดยใช้ Python
- สร้างวัตถุของคลาสเอกสาร
- สร้างวัตถุของคลาส DocumentBuilder
- เริ่มตารางโดยใช้เมธอด DocumentBuilder.starttable() และรับข้อมูลอ้างอิงของตารางในวัตถุ
- แทรกเซลล์โดยใช้เมธอด DocumentBuilder.insertcell()
- ตั้งค่าการจัดรูปแบบของเซลล์โดยใช้คุณสมบัติ DocumentBuilder.cellformat
- ตั้งค่าการปรับให้พอดีอัตโนมัติโดยใช้เมธอด autofit(aw.tables.AutoFitBehavior.FIXEDCOLUMNWIDTHS)
- กำหนดการจัดตำแหน่งของเซลล์
- แทรกข้อความลงในเซลล์โดยใช้เมธอด DocumentBuilder.write()
- ทำซ้ำการแทรกเซลล์และข้อความลงในเซลล์ตามต้องการ
- จบแถวเมื่อคุณแทรกเซลล์เสร็จแล้ว
- จบตารางเมื่อคุณแทรกแถวทั้งหมดแล้ว
- บันทึกเอกสาร Word โดยใช้วิธี Document.save()
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีสร้างตารางในเอกสาร DOCX โดยใช้ Python
import aspose.words as aw
# สร้างเอกสาร Word ใหม่
doc = aw.Document()
# สร้างตัวสร้างเอกสาร
builder = aw.DocumentBuilder(doc)
# เริ่มตาราง
table = builder.start_table()
# แทรกเซลล์
builder.insert_cell()
# ต้องใช้การจัดรูปแบบกว้างตารางหลังจากมีอย่างน้อยหนึ่งแถวในตาราง
table.left_indent = 20.0
# ตั้งค่าความสูงและกำหนดกฎความสูงสำหรับแถวส่วนหัว
builder.row_format.height = 40.0
builder.row_format.height_rule = aw.HeightRule.AT_LEAST
# ตั้งค่าการจัดตำแหน่งและแบบอักษร
builder.paragraph_format.alignment = aw.ParagraphAlignment.CENTER
builder.font.size = 16
builder.font.name = "Arial"
builder.font.bold = True
builder.cell_format.width = 100.0
builder.write("Header Row,\n Cell 1")
# เราไม่จำเป็นต้องระบุความกว้างของเซลล์นี้เนื่องจากได้รับค่ามาจากเซลล์ก่อนหน้า
builder.insert_cell()
builder.write("Header Row,\n Cell 2")
builder.insert_cell()
builder.cell_format.width = 200.0
builder.write("Header Row,\n Cell 3")
builder.end_row()
builder.cell_format.width = 100.0
builder.cell_format.vertical_alignment = aw.tables.CellVerticalAlignment.CENTER
# รีเซ็ตความสูงและกำหนดกฎความสูงที่แตกต่างกันสำหรับตัวตาราง
builder.row_format.height = 30.0
builder.row_format.height_rule = aw.HeightRule.AUTO
builder.insert_cell()
# รีเซ็ตการจัดรูปแบบตัวอักษร
builder.font.size = 12
builder.font.bold = False
builder.write("Row 1, Cell 1 Content")
builder.insert_cell()
builder.write("Row 1, Cell 2 Content")
builder.insert_cell()
builder.cell_format.width = 200.0
builder.write("Row 1, Cell 3 Content")
builder.end_row()
builder.insert_cell()
builder.cell_format.width = 100.0
builder.write("Row 2, Cell 1 Content")
builder.insert_cell()
builder.write("Row 2, Cell 2 Content")
builder.insert_cell()
builder.cell_format.width = 200.0
builder.write("Row 2, Cell 3 Content.")
builder.end_row()
# ท้ายตาราง.
builder.end_table()
# บันทึกเอกสาร
doc.save("table_formatted.docx")
ต่อไปนี้เป็นภาพหน้าจอของตารางที่เราสร้างขึ้นโดยใช้ตัวอย่างโค้ดด้านบน
สร้างตารางที่ซ้อนกันในเอกสาร Word ใน Python
Aspose.Words for Python ยังช่วยให้คุณสร้างตารางที่ซ้อนกันได้อย่างลงตัว กล่าวคือ คุณสามารถสร้างตารางใหม่ภายในเซลล์ของตารางได้ ต่อไปนี้เป็นขั้นตอนในการสร้างตารางที่ซ้อนกันในไฟล์ Word DOCX
- สร้างวัตถุของคลาสเอกสาร
- สร้างวัตถุของคลาส DocumentBuilder
- เริ่มตารางโดยใช้เมธอด DocumentBuilder.starttable() และรับข้อมูลอ้างอิงของตารางในวัตถุ
- แทรกเซลล์โดยใช้เมธอด DocumentBuilder.insertcell() และรับการอ้างอิงของเซลล์ในวัตถุ
- แทรกข้อความลงในเซลล์โดยใช้เมธอด DocumentBuilder.write()
- ทำซ้ำการแทรกเซลล์และข้อความลงในเซลล์ตามต้องการ
- จบตารางเมื่อคุณแทรกแถวทั้งหมดแล้ว
- ย้ายตัวควบคุมภายในเซลล์ที่ต้องการโดยใช้เมธอด DocumentBuilder.moveto(Cell.firstparagraph)
- สร้างตารางใหม่โดยการแทรกเซลล์และสิ้นสุดตารางเมื่อเสร็จสิ้น
- บันทึกเอกสาร Word โดยใช้วิธี Document.save()
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีสร้างตารางซ้อนในเอกสาร DOCX โดยใช้ Python
import aspose.words as aw
# สร้างเอกสาร Word ใหม่
doc = aw.Document()
builder = aw.DocumentBuilder(doc)
# แทรกเซลล์
cell = builder.insert_cell()
builder.writeln("Outer Table Cell 1")
builder.insert_cell()
builder.writeln("Outer Table Cell 2")
# การเรียกนี้มีความสำคัญในการสร้างตารางที่ซ้อนกันภายในตารางแรก
# หากไม่มีการเรียกนี้ เซลล์ที่แทรกด้านล่างจะถูกผนวกเข้ากับตารางภายนอก
builder.end_table()
# ย้ายไปยังเซลล์แรกของตารางด้านนอก
builder.move_to(cell.first_paragraph)
# สร้างตารางด้านใน
builder.insert_cell()
builder.writeln("Inner Table Cell 1")
builder.insert_cell()
builder.writeln("Inner Table Cell 2")
builder.end_table()
# บันทึกเอกสาร
doc.save("table_nested.docx")
ต่อไปนี้คือเอาต์พุตของตัวอย่างโค้ดด้านบน
โคลนตารางที่มีอยู่ในเอกสาร Word ใน Python
คุณยังสามารถโคลนตารางที่มีอยู่ในเอกสาร Word ต่อไปนี้เป็นขั้นตอนในการดำเนินการนี้
- โหลดเอกสารโดยใช้คลาส Document
- รับการอ้างอิงตารางในวัตถุโดยใช้เมธอด Document.getchild(NodeType.TABLE, int, boolean).astable()
- โทร clone(True).astable() โดยใช้วัตถุของตารางและรับการอ้างอิงของตารางโคลนในวัตถุอื่น
- แทรกตารางที่โคลนโดยใช้เมธอด Table.parentnode.insertafter()
- แทรกย่อหน้าว่างระหว่างตารางโดยใช้เมธอด Table.parentnode.insertafter(ย่อหน้า(เอกสาร), ตาราง)
- บันทึกเอกสาร Word โดยใช้วิธี Document.save()
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการโคลนตารางในเอกสาร Word DOCX โดยใช้ Python
import aspose.words as aw
# โหลดเอกสาร Word
doc = aw.Document("table_formatted.docx")
# รับข้อมูลอ้างอิงของตารางที่ต้องการ
table = doc.get_child(aw.NodeType.TABLE, 0, True).as_table()
# คัดลอกตารางและแทรกลงในเอกสารหลังตารางต้นฉบับ
tableClone = table.clone(True).as_table()
table.parent_node.insert_after(tableClone, table)
# แทรกย่อหน้าว่างระหว่างสองตาราง
# มิฉะนั้นพวกเขาจะรวมกันเป็นหนึ่งเดียวเมื่อบันทึก
table.parent_node.insert_after(aw.Paragraph(doc), table)
# บันทึกเอกสาร
doc.save("table_clone.docx")
ภาพหน้าจอต่อไปนี้แสดงตารางโคลนในเอกสาร Word
รับใบอนุญาต API ฟรี
คุณสามารถรับ ใบอนุญาตชั่วคราว เพื่อใช้ Aspose.Words for Python ได้โดยไม่มีข้อจำกัดในการประเมิน
บทสรุป
ในบทความนี้ คุณได้เรียนรู้วิธีสร้างตารางในเอกสาร Word โดยใช้ Python ยิ่งไปกว่านั้น คุณได้เห็นวิธีสร้างตารางที่ซ้อนกันหรือโคลนตารางที่มีอยู่ในเอกสาร Word แบบไดนามิก นอกจากนี้ คุณสามารถไปที่ เอกสารประกอบ ของ Aspose.Words for Python เพื่อสำรวจคุณสมบัติอื่นๆ ในกรณีที่มีคำถามใดๆ โปรดแจ้งให้เราทราบผ่าน ฟอรัม ของเรา
ดูสิ่งนี้ด้วย
- สร้างเอกสาร MS Word โดยใช้ Python
- แปลงเอกสาร Word เป็น HTML โดยใช้ Python
- แปลงเอกสาร Word เป็น PNG, JPEG หรือ BMP ใน Python
- เอกสาร Word เพื่อ Markdown โดยใช้ Python
- เปรียบเทียบเอกสาร Word สองชุดใน Python
ข้อมูล: หากคุณต้องการรับเอกสาร Word จากงานนำเสนอ PowerPoint คุณสามารถใช้ตัวแปลง Aspose Presentation to Word Document ได้