دمج الخلايا في Word باستخدام Python

يرشدك هذا المقال إلى كيفية دمج الخلايا في Word باستخدام Python. يحتوي هذا المقال على الموارد اللازمة لتعيين بيئة التطوير، وقائمة بخطوات البرمجة، ونموذج تعليمات برمجية يوضح كيفية دمج الخلايا في Microsoft Word باستخدام Python. ستتعلم كيفية تنفيذ المهمة باستخدام طريقة محددة مسبقًا لدمج الخلايا في جدول.

خطوات دمج الخلايا في جدول Word باستخدام Python

  1. قم بتعيين البيئة لاستخدام Aspose.Words لـ Python عبر .NET لدمج خلايا الجدول
  2. أضف الطريقة المحددة مسبقًا mergeCells() في تطبيقك لدمج الخلايا
  3. قم بتحميل ملف Word المصدر الذي يحتوي على الجداول إلى كائن الفئة Document لدمج الخلايا
  4. الحصول على مرجع إلى الخلية الأولى والأخيرة في الجدول المستهدف
  5. استدعاء طريقة mergeCells() مع الخلية الأولى والأخيرة المحددة
  6. Save ملف Word المعدل مع الخلايا المدمجة

تلخص هذه الخطوات كيفية دمج الخلايا في Word باستخدام Python. أضف الطريقة المحددة مسبقًا في المشروع وقم بتحميل ملف Word إلى كائن فئة Document، وقم بالوصول إلى القسم المستهدف والجدول باستخدام فهرسه. احصل على مرجع للخلية الأولى والأخيرة في النطاق المطلوب من الخلايا للدمج واستخدم طريقة mergeCells() لدمج النطاق.

كود دمج الخلايا في الوورد باستخدام بايثون

import aspose.words as aw
import aspose.pydrawing as drawing
def mergeCells(startCell: aw.tables.Cell, endCell: aw.tables.Cell):
parentTable = startCell.parent_row.parent_table
# Find the start and end cell position
startCellPos = drawing.Point(startCell.parent_row.index_of(startCell), parentTable.index_of(startCell.parent_row))
endCellPos = drawing.Point(endCell.parent_row.index_of(endCell), parentTable.index_of(endCell.parent_row))
# Create a range of cells
mergeRange = drawing.Rectangle(
min(startCellPos.x, endCellPos.x),
min(startCellPos.y, endCellPos.y),
abs(endCellPos.x - startCellPos.x) + 1,
abs(endCellPos.y - startCellPos.y) + 1)
for row in parentTable.rows:
row = row.as_row()
for cell in row.cells:
cell = cell.as_cell()
currentPos = drawing.Point(row.index_of(cell), parentTable.index_of(row))
# Merge the cell if inside the range
if mergeRange.contains(currentPos):
cell.cell_format.horizontal_merge = aw.tables.CellMerge.FIRST if currentPos.x == mergeRange.x else aw.tables.CellMerge.PREVIOUS
cell.cell_format.vertical_merge = aw.tables.CellMerge.FIRST if currentPos.y == mergeRange.y else aw.tables.CellMerge.PREVIOUS
# Load the license
wordLic = aw.License()
wordLic.set_license("license.lic")
tableDoc = aw.Document("Table.docx")
table = tableDoc.first_section.body.tables[0]
# Define start and end cell for the range
cellStartRange = table.rows[0].cells[0]
cellEndRange = table.rows[1].cells[1]
# Merge cells
mergeCells(cellStartRange, cellEndRange)
tableDoc.save("output.docx")
print ("Table cells merged successfully")

يوضح هذا الكود النموذجي كيفية دمج الجداول في Word باستخدام Python من خلال الجمع بين الخلايا. تحتوي كل خلية على خاصية دمج أفقي ورأسي يتم تعيينها على قيمة عداد CellMerge مختلفة عند دمج نطاق الخلايا. يمكنك العمل بنفس الخصائص أثناء إنشاء جدول جديد ودمج الخلايا أفقيًا أو رأسيًا.

تتناول هذه المقالة عملية دمج خلايا متعددة في جدول Word. إذا كنت تريد دمج ملفات Word كاملة، راجع المقالة على كيفية دمج مستندات Word باستخدام Python.

 عربي