![إنشاء جداول في مستندات Word باستخدام Python](images/create-tables-in-Word-documents.jpg#center)
تُستخدم الجداول بشكل شائع في مستندات Word لتنظيم المعلومات في بنية تشبه الشبكة. إنها تسمح لك بتلخيص المعلومات في شكل صفوف وأعمدة. في هذه المقالة ، ستتعلم كيفية إنشاء جدول في مستندات Word برمجيًا باستخدام Python. علاوة على ذلك ، ستغطي المقالة كيفية إنشاء جداول متداخلة أو استنساخ جدول موجود في مستندات Word.
- مكتبة Python لإنشاء جداول في مستندات Word
- قم بإنشاء جدول في مستند Word
- قم بإنشاء جدول متداخل في مستند Word
- استنساخ جدول موجود في مستند Word
مكتبة Python لإنشاء جداول في مستندات 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.
- اضبط الاحتواء التلقائي باستخدام طريقة الاحتواء التلقائي (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")
فيما يلي لقطة شاشة للجدول الذي أنشأناه باستخدام نموذج التعليمات البرمجية أعلاه.
![Table in a Word DOCX Document](images/Create-Table-in-Word-Document-1024x267.jpg#center)
قم بإنشاء جدول متداخل في مستند 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")
التالي هو إخراج نموذج التعليمات البرمجية أعلاه.
![Nested Table in a Word Document](images/Create-Nested-Table-in-Word-Document-1024x252.jpg#center)
استنساخ جدول موجود في مستند Word في Python
يمكنك أيضًا استنساخ جدول موجود في مستند Word. فيما يلي خطوات إجراء هذه العملية.
- قم بتحميل المستند باستخدام فئة المستند.
- احصل على مرجع للجدول في كائن باستخدام أسلوب 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.
![Cloned Table in a Word Document](images/Clone-Table-in-Word-Document-1024x465.jpg#center)
احصل على ترخيص API مجاني
يمكنك الحصول على ترخيص مؤقت لاستخدام Aspose.Words مع Python بدون قيود تقييم.
استنتاج
في هذه المقالة ، تعلمت كيفية إنشاء جداول في مستندات Word باستخدام Python. علاوة على ذلك ، لقد رأيت كيفية إنشاء جداول متداخلة أو استنساخ الجداول الموجودة في مستندات Word ديناميكيًا. بالإضافة إلى ذلك ، يمكنك زيارة وثائق Aspose.Words for Python لاستكشاف ميزات أخرى. في حالة وجود أي أسئلة ، لا تتردد في إخبارنا عبر المنتدى.
أنظر أيضا
- قم بإنشاء مستندات MS Word باستخدام Python
- تحويل مستند Word إلى HTML باستخدام Python
- قم بتحويل مستندات Word إلى PNG أو JPEG أو BMP في Python
- مستندات Word لتسجيل العلامات باستخدام Python
- قارن بين وثيقتين Word في Python
معلومات: إذا احتجت في أي وقت إلى الحصول على مستند Word من عرض تقديمي لـ PowerPoint ، فيمكنك استخدام محول Aspose Presentation to Word Document.