ליצור טבלאות במסמכי Word באמצעות python

טבלאות משמשות בדרך כלל במסמכי Word כדי לארגן מידע במבנה דמוי רשת. הם מאפשרים לך לסכם את המידע בצורה של שורות ועמודות. במאמר זה תלמדו כיצד ליצור טבלה במסמכי Word באופן תכנותי באמצעות Python. יתרה מכך, המאמר יעסוק כיצד ליצור טבלאות מקוננות או לשכפל טבלה קיימת במסמכי Word.

ספריית Python ליצירת טבלאות במסמכי Word

כדי לעבוד עם טבלאות במסמכי Word, נשתמש ב-Aspose.Words for Python. הספרייה נועדה ליצור ולתפעל מסמכי Word באופן דינמי מתוך יישומי Python. אתה יכול להתקין את הספרייה מ-PyPI באמצעות פקודת ה-pip הבאה.

pip install aspose-words

צור טבלה במסמך Word ב- Python

להלן השלבים ליצירת טבלה במסמך Word DOCX באמצעות Python.

  • צור אובייקט במחלקה Document.
  • צור אובייקט של מחלקה DocumentBuilder.
  • התחל טבלה באמצעות שיטת DocumentBuilder.starttable() וקבל התייחסות לטבלה באובייקט.
  • הכנס תא באמצעות שיטת DocumentBuilder.insertcell().
  • הגדר עיצוב של התא באמצעות המאפיין DocumentBuilder.cellformat.
  • הגדר התאמה אוטומטית באמצעות שיטת התאמה אוטומטית (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 עבור Python גם מאפשר לך ליצור טבלה מקוננת בצורה חלקה. במילים אחרות, אתה יכול ליצור טבלה חדשה בתוך תא של הטבלה. להלן השלבים ליצירת טבלה מקוננת בקובץ Word DOCX.

  • צור אובייקט במחלקה Document.
  • צור אובייקט של מחלקה 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 class.
  • קבל הפניה לטבלה באובייקט באמצעות שיטת Document.getchild(NodeType.TABLE, int, boolean).astable().
  • קרא לשיטה clone(True).astable() באמצעות אובייקט הטבלה וקבל התייחסות לטבלה המשובטת באובייקט אחר.
  • הוסף טבלה משובטת באמצעות שיטת Table.parentnode.inserafter() .
  • הוסף פסקה ריקה בין טבלאות באמצעות שיטת Table.parentnode.inserafter(Paragraph(Document), Table).
  • שמור את מסמך 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 עבור Python ללא מגבלות הערכה.

סיכום

במאמר זה, למדת כיצד ליצור טבלאות במסמכי Word באמצעות Python. יתר על כן, ראית כיצד ליצור טבלאות מקוננות או לשכפל את הטבלאות הקיימות במסמכי Word באופן דינמי. חוץ מזה, אתה יכול לבקר בתיעוד של Aspose.Words for Python כדי לחקור תכונות אחרות. בכל שאלה, אל תהסס ליידע אותנו באמצעות הפורום שלנו.

ראה גם

מידע: אם אי פעם תצטרך לקבל מסמך Word ממצגת PowerPoint, תוכל להשתמש בממיר Aspose מצגת למסמך Word.