ไฟล์ MS Word ถูกใช้อย่างมากในการสร้างเอกสารประเภทต่างๆ เช่น ใบแจ้งหนี้ รายงาน บทความทางเทคนิค เป็นต้น ระบบอัตโนมัติของเอกสารได้อำนวยความสะดวกให้ผู้ใช้ในการสร้างเอกสาร Word แบบไดนามิกจากภายในพอร์ทัลเว็บหรือเดสก์ท็อป ดังนั้นในบทความนี้เราจะกล่าวถึงวิธีการสร้างเอกสาร Word ใน Python โดยไม่ต้องใช้ MS Office นอกจากนี้ คุณจะได้เรียนรู้วิธีสร้างไฟล์ DOCX หรือ DOC และเพิ่มข้อความหรือองค์ประกอบอื่นๆ ลงในไฟล์แบบไดนามิกโดยใช้ Python
- Python API เพื่อสร้างเอกสาร Word
- สร้างไฟล์ Word DOCX/DOC ใน Python
- โหลดเอกสาร Word ที่มีอยู่
- แทรกย่อหน้าในเอกสาร Word
- เพิ่มตารางในเอกสาร Word
- เพิ่มรายการในไฟล์ Word DOCX/DOC
- แทรกรูปภาพในเอกสาร Word
- เพิ่มสารบัญในไฟล์ Word
Python API เพื่อสร้างเอกสาร Word
ในการสร้างเอกสาร Word แบบไดนามิก เราจะใช้ Aspose.Words for Python เป็นไลบรารี Python อันทรงพลังที่ช่วยให้คุณสร้างและจัดการเอกสาร MS Word ได้อย่างราบรื่น คุณสามารถติดตั้งไลบรารีในแอปพลิเคชัน Python ได้จาก PyPI โดยใช้คำสั่ง pip ต่อไปนี้
pip install aspose-words
สร้างไฟล์ Word DOCX หรือ DOC ใน Python
ต่อไปนี้เป็นขั้นตอนในการสร้างเอกสาร Word ตั้งแต่เริ่มต้นใน Python
- สร้างวัตถุของคลาสเอกสาร
- สร้างวัตถุของคลาส DocumentBuilder
- แทรกข้อความลงในเอกสารโดยใช้เมธอด DocumentBuilder.write()
- บันทึกเอกสาร Word โดยใช้วิธี Document.save()
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการสร้างเอกสาร Word DOCX
import aspose.words as aw
# สร้างวัตถุเอกสาร
doc = aw.Document()
# สร้างวัตถุตัวสร้างเอกสาร
builder = aw.DocumentBuilder(doc)
# เพิ่มข้อความลงในเอกสาร
builder.write("Hello world!")
# บันทึกเอกสาร
doc.save("out.docx")
เอาต์พุต
โหลดเอกสาร Word ที่มีอยู่ใน Python
คุณยังสามารถโหลดเอกสาร Word ที่มีอยู่ได้โดยระบุเส้นทางไปยังตัวสร้างเอกสาร ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการโหลดเอกสาร Word
import aspose.words as aw
# สร้างวัตถุเอกสาร
doc = aw.Document("document.docx")
# จัดการเอกสาร
# บันทึกเอกสาร
doc.save("out.docx")
แทรกย่อหน้าในเอกสาร Word โดยใช้ Python
เอกสาร Word มีข้อความในรูปแบบของย่อหน้า ดังนั้น ในหัวข้อนี้ เราจะสาธิตวิธีการแทรกย่อหน้าลงในเอกสาร Word โดยใช้ Python
- สร้างวัตถุของคลาสเอกสาร
- สร้างวัตถุของคลาส DocumentBuilder
- รับการอ้างอิงแบบอักษรจากวัตถุ Documentbuilder และตั้งค่าแบบอักษร
- รับการอ้างอิงย่อหน้า fromat จากวัตถุ Documentbuilder และตั้งค่าการเยื้อง การจัดตำแหน่ง ฯลฯ
- แทรกข้อความลงในย่อหน้าโดยใช้เมธอด DocumentBuilder.write()
- บันทึกเอกสาร Word โดยใช้วิธี Document.save()
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการแทรกย่อหน้าในเอกสาร Word โดยใช้ Python
import aspose.words as aw
# สร้างวัตถุเอกสาร
doc = aw.Document()
# สร้างวัตถุตัวสร้างเอกสาร
builder = aw.DocumentBuilder(doc)
# สร้างแบบอักษร
font = builder.font
font.size = 16
font.bold = True
font.name = "Arial"
font.underline = aw.Underline.DASH
# กำหนดการจัดรูปแบบย่อหน้า
paragraphFormat = builder.paragraph_format
paragraphFormat.first_line_indent = 8
paragraphFormat.alignment = aw.ParagraphAlignment.JUSTIFY
paragraphFormat.keep_together = True
# เพิ่มข้อความ
builder.writeln("A whole paragraph.")
# บันทึกเอกสาร
doc.save("out.docx")
เอาต์พุต
เรียนรู้เพิ่มเติมเกี่ยวกับ การทำงานกับย่อหน้า ในเอกสาร Word โดยใช้ Python
เพิ่มตารางในเอกสาร Word โดยใช้ Python
ตารางเป็นส่วนสำคัญของเอกสารเพื่อแสดงข้อมูลในรูปแบบของแถวและคอลัมน์ Aspose.Words for Python ช่วยให้ทำงานกับตารางได้ง่ายขึ้น ต่อไปนี้เป็นขั้นตอนในการเพิ่มตารางในเอกสาร Word โดยใช้ Python
- สร้างวัตถุของคลาสเอกสาร
- สร้างวัตถุของคลาส DocumentBuilder
- เริ่มตารางโดยใช้เมธอด DocumentBuilder.starttable() และรับข้อมูลอ้างอิงของตารางในวัตถุ
- แทรกเซลล์โดยใช้เมธอด DocumentBuilder.insertcell()
- ตั้งค่าการปรับให้พอดีอัตโนมัติโดยใช้เมธอด autofit(aw.tables.AutoFitBehavior.FIXEDCOLUMNWIDTHS)
- กำหนดการจัดตำแหน่งของเซลล์
- แทรกข้อความลงในเซลล์โดยใช้เมธอด DocumentBuilder.write()
- ทำซ้ำการแทรกเซลล์และข้อความลงในเซลล์ตามต้องการ
- จบแถวเมื่อคุณแทรกเซลล์เสร็จแล้ว
- จบตารางเมื่อคุณแทรกแถวทั้งหมดแล้ว
- บันทึกเอกสาร Word โดยใช้วิธี Document.save()
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการแทรกตารางในเอกสาร Word โดยใช้ Python
import aspose.words as aw
# สร้างวัตถุเอกสาร
doc = aw.Document()
# สร้างวัตถุตัวสร้างเอกสาร
builder = aw.DocumentBuilder(doc)
# ตารางเริ่มต้น
table = builder.start_table()
# แทรกเซลล์
builder.insert_cell()
table.auto_fit(aw.tables.AutoFitBehavior.AUTO_FIT_TO_CONTENTS)
# กำหนดรูปแบบและเพิ่มข้อความ
builder.cell_format.vertical_alignment = aw.tables.CellVerticalAlignment.CENTER
builder.write("This is row 1 cell 1")
# แทรกเซลล์
builder.insert_cell()
builder.write("This is row 1 cell 2")
# แถวท้าย
builder.end_row()
# แทรกเซลล์อื่นในแถวถัดไป
builder.insert_cell()
# จัดรูปแบบแถวหากจำเป็น
builder.row_format.height = 100
builder.row_format.height_rule = aw.HeightRule.EXACTLY
# จัดรูปแบบเซลล์และเพิ่มข้อความ
builder.cell_format.orientation = aw.TextOrientation.UPWARD
builder.writeln("This is row 2 cell 1")
# insert another cell, กำหนดรูปแบบและเพิ่มข้อความ
builder.insert_cell()
builder.cell_format.orientation = aw.TextOrientation.DOWNWARD
builder.writeln("This is row 2 cell 2")
# แถวท้าย
builder.end_row()
# ท้ายตาราง
builder.end_table()
# บันทึกเอกสาร
doc.save("out.docx")
เอาต์พุต
เรียนรู้เพิ่มเติมเกี่ยวกับวิธี ทำงานกับตาราง ในเอกสาร Word โดยใช้ Python
สร้างรายการในเอกสาร Word โดยใช้ Python
ต่อไปนี้เป็นขั้นตอนในการสร้างรายการในเอกสาร Word โดยใช้ Python
- สร้างวัตถุของคลาสเอกสาร
- สร้างวัตถุของคลาส DocumentBuilder
- ตั้งค่าการจัดรูปแบบโดยใช้เมธอด DocumentBuilder.listformat.applynumberdefault()
- แทรกรายการโดยใช้เมธอด DocumentBuilder.writeln(“รายการ 1”)
- แทรกรายการที่สองโดยใช้เมธอด DocumentBuilder.writeln(“Item 2”)
- เมื่อต้องการแทรกรายการในระดับถัดไปของรายการ ให้เรียกเมธอด DocumentBuilder.listformat.listindent() แล้วแทรกรายการ
- ลบตัวเลขออกจากรายการโดยใช้เมธอด DocumentBuilder.listformat.removenumbers()
- บันทึกเอกสาร Word โดยใช้วิธี Document.save()
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีสร้างรายการในเอกสาร Word โดยใช้ Python
import aspose.words as aw
# สร้างวัตถุเอกสาร
doc = aw.Document()
# สร้างวัตถุตัวสร้างเอกสาร
builder = aw.DocumentBuilder(doc)
# กำหนดรูปแบบรายการ
builder.list_format.apply_number_default()
# แทรกรายการ
builder.writeln("Item 1")
builder.writeln("Item 2")
# ตั้งค่าการเยื้องสำหรับระดับถัดไปของรายการ
builder.list_format.list_indent()
builder.writeln("Item 2.1")
builder.writeln("Item 2.2")
# เยื้องอีกครั้งสำหรับระดับถัดไป
builder.list_format.list_indent()
builder.writeln("Item 2.2.1")
builder.writeln("Item 2.2.2")
# outdent เพื่อกลับไปยังระดับก่อนหน้า
builder.list_format.list_outdent()
builder.writeln("Item 2.3")
# ออกไปอีกครั้งเพื่อกลับไปที่ระดับแรก
builder.list_format.list_outdent()
builder.writeln("Item 3")
# ลบตัวเลข
builder.list_format.remove_numbers()
# บันทึกเอกสาร
doc.save("out.docx")
เอาต์พุต
อ่านเพิ่มเติมเกี่ยวกับ การทำงานกับรายการ ในเอกสาร Word โดยใช้ Python
แทรกรูปภาพในเอกสาร Word โดยใช้ Python
ขณะทำงานกับเอกสาร Word คุณไม่สามารถเพิกเฉยต่อวัตถุกราฟิก เช่น รูปภาพ มาดูวิธีการแทรกรูปภาพในเอกสาร Word แบบไดนามิกโดยใช้ Python
- สร้างวัตถุของคลาสเอกสาร
- สร้างวัตถุของคลาส DocumentBuilder
- แทรกรูปภาพโดยใช้เมธอด DocumentBuilder.insertimage() และส่งพาธของไฟล์รูปภาพเป็นพารามิเตอร์
- บันทึกเอกสาร Word โดยใช้วิธี Document.save()
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการแทรกรูปภาพในเอกสาร Word โดยใช้ Python
import aspose.words as aw
# สร้างวัตถุเอกสาร
doc = aw.Document()
# สร้างวัตถุตัวสร้างเอกสาร
builder = aw.DocumentBuilder(doc)
# ใส่รูปภาพ
builder.insert_image("Logo.jpg")
# บันทึกเอกสาร
doc.save("out.docx")
เอาต์พุต
สร้างสารบัญในเอกสาร Word โดยใช้ Python
ในหลายกรณี เอกสาร Word จะมีสารบัญ (TOC) TOC จะแสดงภาพรวมของเนื้อหาในเอกสาร Word ขั้นตอนต่อไปนี้จะสาธิตวิธีการเพิ่ม TOC ในเอกสาร Word โดยใช้ Python
- สร้างวัตถุของคลาสเอกสาร
- สร้างวัตถุของคลาส DocumentBuilder
- แทรกสารบัญโดยใช้เมธอด DocumentBuilder.inserttableofcontents()
- แทรกตัวแบ่งหน้าหลัง TOC โดยใช้วิธี DocumentBuilder.insertbreak(aw.BreakType.PAGEBREAK)
- หลังจากเพิ่ม/อัปเดตเนื้อหาของเอกสารแล้ว ให้อัปเดต TOC โดยใช้วิธี Document.updatefields()
- บันทึกเอกสาร Word โดยใช้วิธี Document.save()
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการแทรกสารบัญในเอกสาร Word โดยใช้ Python
import aspose.words as aw
# สร้างวัตถุเอกสาร
doc = aw.Document()
# สร้างวัตถุตัวสร้างเอกสาร
builder = aw.DocumentBuilder(doc)
# ใส่สารบัญ
builder.insert_table_of_contents("\\o \"1-3\" \\h \\z \\u")
# เริ่มเนื้อหาเอกสารจริงในหน้าที่ 2
builder.insert_break(aw.BreakType.PAGE_BREAK)
# เพิ่มเนื้อหา
builder.paragraph_format.style_identifier = aw.StyleIdentifier.HEADING1
builder.writeln("Heading 1")
builder.paragraph_format.style_identifier = aw.StyleIdentifier.HEADING2
builder.writeln("Heading 1.1")
builder.writeln("Heading 1.2")
builder.paragraph_format.style_identifier = aw.StyleIdentifier.HEADING1
builder.writeln("Heading 2")
builder.writeln("Heading 3")
builder.paragraph_format.style_identifier = aw.StyleIdentifier.HEADING2
builder.writeln("Heading 3.1")
builder.paragraph_format.style_identifier = aw.StyleIdentifier.HEADING3
builder.writeln("Heading 3.1.1")
builder.writeln("Heading 3.1.2")
builder.writeln("Heading 3.1.3")
builder.paragraph_format.style_identifier = aw.StyleIdentifier.HEADING2
builder.writeln("Heading 3.2")
builder.writeln("Heading 3.3")
# สารบัญที่แทรกใหม่จะว่างเปล่าในตอนแรก
# จะต้องมีการเติมโดยการอัปเดตฟิลด์ในเอกสาร
doc.update_fields()
# บันทึกเอกสาร
doc.save("out.docx")
เอาต์พุต
อ่านเพิ่มเติมเกี่ยวกับ การทำงานกับสารบัญ โดยใช้ Python
อ่านเพิ่มเติม
บทความนี้กล่าวถึงการดำเนินการพื้นฐานในการสร้างเอกสาร Word และการแทรกองค์ประกอบต่างๆ Aspose.Words for Python มีคุณสมบัติอื่นๆ มากมายเช่นกัน ซึ่งคุณสามารถสำรวจได้โดยใช้ เอกสารประกอบ
รับใบอนุญาต API ฟรี
คุณสามารถ รับใบอนุญาตชั่วคราว เพื่อใช้ Aspose.Words for Python โดยไม่มีข้อจำกัดในการประเมิน
บทสรุป
ในบทความนี้ คุณได้เรียนรู้วิธีสร้างไฟล์ Word DOCX หรือ DOC ใน Python นอกจากนี้ คุณได้เห็นวิธีการแทรกข้อความ รูปภาพ ตาราง รายการ และสารบัญในเอกสาร Word แบบไดนามิก คุณสามารถลองใช้ API และแบ่งปันความคิดเห็นหรือข้อสงสัยของคุณผ่าน ฟอรัม ของเรา
ดูสิ่งนี้ด้วย
เคล็ดลับ: Aspose ให้บริการตัวแปลง PowerPoint เป็น Word ออนไลน์ฟรี ซึ่งช่วยให้คุณสร้างเอกสาร Word จากงานนำเสนอได้อย่างรวดเร็ว