نظرة عامة
يعد دمج مستندات Word مطلبًا شائعًا في العديد من التطبيقات، سواء لجمع التقارير أو توحيد المعلومات أو مجرد تبسيط إدارة المستندات. في هذه المقالة، سنستكشف كيفية دمج ملفات DOCX باستخدام بايثون مع مكتبة GroupDocs.Merger. هذه المكتبة القوية تتيح للمطورين التلاعب بمستندات Word برمجيًا بسهولة مع ضمان أداء دقيق وعالي.
سيتناول هذا الدليل:
- كيفية دمج عدة ملفات DOCX
- كيفية دمج المستندات بدون فواصل قسم
- كيفية الدمج مع أوضاع امتثال محددة مسبقًا
- التعامل مع تدفقات المستندات في بايثون
كيفية دمج عدة ملفات DOCX
يعد دمج عدة ملفات DOCX أمرًا سهلاً مع مكتبة GroupDocs.Merger. أدناه، نوضح الخطوات الرئيسية المتبعة في هذه العملية:
- استيراد حزمة GroupDocs.Merger: ابدأ باستيراد المكتبة المطلوبة.
- إنشاء مثيل للدمج: قم بإنشاء كائن من فئة Merger باستخدام مسار الملف الأول DOCX.
- ضم مستندات إضافية: استخدم الطريقة
join
لإضافة ملفات DOCX الأخرى التي ترغب في دمجها. - حفظ المستند المدمج: أخيرًا، اتصل بالطريقة
save
لكتابة المستند المدمج إلى مسار إخراج محدد.
إليك مقتطف شفرة بايثون يوضح هذه الخطوات:
import groupdocs.merger as gm
import constants
def run():
print(f"----------------------------------------------------------------------------")
print(f"[Example Basic Usage] # MultipleDocumentOperations # Merge : Docx")
# Step 1: Create a Merger object with the first document
with gm.Merger(constants.sample_docx) as merger:
print(f"Document info retrieved successfully")
# Step 2: Join another DOCX file to merge
merger.join(constants.sample_docx)
# Step 3: Save the merged document
merger.save(constants.output_docx)
print(f"Merge to: {constants.output_docx}")
print(f"----------------------------------------------------------------------------")
دمج مستندات DOCX بدون فواصل قسم
في بعض الأحيان، يتطلب دمج المستندات أن يتم دمج المحتويات بدون إدراج فواصل قسم. يمكن أن يساعد هذا في الحفاظ على تدفق المعلومات عبر المستندات المدمجة.
- إنشاء مثيل للدمج: مثل المعتاد، قم بتهيئة فئة Merger.
- تعيين خيارات الدمج: قم بتعريف
WordJoinOptions
واضبطmode
علىDISABLE_SECTION_BREAKS
. - ضم المستندات: أضف المستند الإضافي للدمج.
- حفظ النتيجة: اكتب الإخراج النهائي إلى ملف DOCX جديد.
إليك كيفية القيام بذلك:
import groupdocs.merger as gm
import constants
def run():
print(f"----------------------------------------------------------------------------")
print(f"[Example Basic Usage] # MultipleDocumentOperations # Merge # Word : MergeWordDocumentsWithoutSectionBreaks")
# Step 1: Create a Merger object with the source document
with gm.Merger(constants.sample_doc) as merger:
print(f"Document info retrieved successfully")
# Step 2: Define Word join options to disable section breaks
word_join_options = gm.domain.options.WordJoinOptions()
word_join_options.mode = gm.domain.options.WordJoinMode.DISABLE_SECTION_BREAKS
# Step 3: Join the document without section breaks
merger.join(constants.sample_doc, word_join_options)
# Step 4: Save the merged document
merger.save(constants.output_doc_without_section_breaks)
print(f"Merge to: {constants.output_doc_without_section_breaks}")
print(f"----------------------------------------------------------------------------")
دمج مستندات DOCX مع أوضاع امتثال محددة مسبقًا
للحالات الخاصة، قد تحتاج المستندات إلى الامتثال لمعايير معينة. تسمح لك GroupDocs.Merger بدمج المستندات مع أوضاع امتثال محددة مسبقًا لضمان، على سبيل المثال، أن النتيجة تفي بمعايير ISO.
- إنشاء مثيل للدمج: ابدأ بتكوين فئة Merger مع مستندك الأساسي.
- تعيين وضع الامتثال: قم بإنشاء كائن
WordJoinOptions
واضبط خاصيةcompliance
. - ضم المستندات: أضف المستند الإضافي باستخدام طريقة الدمج.
- حفظ المستند النهائي: احفظه في موقع الإخراج المرغوب.
إليك الشفرة لهذا العملية:
import groupdocs.merger as gm
import constants
def run():
print(f"----------------------------------------------------------------------------")
print(f"[Example Basic Usage] # MultipleDocumentOperations # Merge # Word : MergeWordDocumentsWithPredefinedComplianceMode")
# Step 1: Create a Merger object with the document
with gm.Merger(constants.sample_docx) as merger:
print(f"Document info retrieved successfully")
# Step 2: Define Word join options with predefined compliance mode
word_join_options = gm.domain.options.WordJoinOptions()
word_join_options.compliance = gm.domain.options.WordJoinCompliance.ISO_29500_2008_STRICT
# Step 3: Join another document with compliance mode
merger.join(constants.sample_docx, word_join_options)
# Step 4: Save the merged document
merger.save(constants.output_docx_with_predefined_compliance_mode)
print(f"Merge to: {constants.output_docx_with_predefined_compliance_mode}")
print(f"----------------------------------------------------------------------------")
كيفية دمج DOCX من تدفقات
يمكنك أيضًا دمج ملفات DOCX من تدفقات الذاكرة، وهو ما قد يكون مفيدًا عند التعامل مع مستندات تم إنشاؤها ديناميكيًا.
- احصل على تدفق ملف: افتح مستندك في وضع ثنائي للحصول على التدفق.
- إنشاء مثيل للدمج: قم بتهيئة الفئة
Merger
باستخدام التدفق. - تنفيذ عملية الدمج: دمج حسب الحاجة واحفظ النتيجة.
إليك كيفية تنفيذ ذلك:
from turtle import update
import groupdocs.merger as gm
import constants
def run():
print(f"----------------------------------------------------------------------------")
print(f"[Example Advanced Usage] # Loading # LoadDocumentFromStream")
# Step 1: Get the document stream
stream = get_file_stream()
# Step 2: Create a Merger instance using the stream
with gm.Merger(stream) as merger:
print(f"Document loaded from stream successfully")
print(f"----------------------------------------------------------------------------")
def get_file_stream():
file_path = constants.sample_docx
return open(file_path, "rb")
انظر أيضًا
للحصول على مزيد من التفاصيل، يمكنك استكشاف الموارد التالية:
يمكنك أيضًا تنزيل نسخة تجريبية مجانية من releases.groupdocs.com والحصول على ترخيص مؤقت لتجربة المكتبة بدون قيود على شراء ترخيص مؤقت.
أمثلة شفرة
إليك بعض الأمثلة الإضافية لمساعدتك على فهم عملية الدمج مع مكتبة GroupDocs.Merger لبايثون:
دمج مستندات Word بدون البدء من صفحة جديدة
توضح هذه المثال كيفية دمج المستندات بحيث تتبع الصفحة الأخيرة للمستند الأول مباشرةً صفحة الأولى من المستند التالي، بدون إدراج أي صفحة جديدة.
import groupdocs.merger as gm
import constants
def run():
print(f"----------------------------------------------------------------------------")
print(f"[Example Basic Usage] # MultipleDocumentOperations # Merge # Word : MergeWordDocumentsWithoutStartingFromNewPage")
# Step 1: Create a Merger object with the document
with gm.Merger(constants.sample_doc) as merger:
print(f"Document info retrieved successfully")
# Step 2: Define Word join options for continuous mode
word_join_options = gm.domain.options.WordJoinOptions()
word_join_options.mode = gm.domain.options.WordJoinMode.CONTINUOUS
# Step 3: Join documents without inserting new page
merger.join(constants.sample_doc, word_join_options)
# Step 4: Save the merged document
merger.save(constants.output_doc_without_starting_from_new_page)
print(f"Merge to: {constants.output_doc_without_starting_from_new_page}")
print(f"----------------------------------------------------------------------------")
دمج مستندات متعددة مع خيارات دمج مخصصة
إليك كيفية دمج مستندات DOCX مع تعيين خيارات دمج محددة، مثل الامتثال لمعيار ISO معين.
import groupdocs.merger as gm
import constants
def run():
print(f"----------------------------------------------------------------------------")
print(f"[Example Advanced Usage] # Merge with Custom Join Options")
# Step 1: Create a Merger object with the base document
with gm.Merger(constants.sample_docx) as merger:
print(f"Document info retrieved successfully")
# Step 2: Set custom join options for predefined compliance mode
word_join_options = gm.domain.options.WordJoinOptions()
word_join_options.compliance = gm.domain.options.WordJoinCompliance.ISO_29500_2008_STRICT
# Step 3: Join another document with compliance settings
merger.join(constants.sample_docx, word_join_options)
# Step 4: Save the merged document
merger.save(constants.output_docx_with_predefined_compliance_mode)
print(f"Merge to: {constants.output_docx_with_predefined_compliance_mode}")
print(f"----------------------------------------------------------------------------")
انظر أيضًا
لاستكشاف المزيد حول GroupDocs.Merger ووظائفها، يمكنك الاطلاع على الموارد التالية:
- توثيق GroupDocs.Merger لبايثون
- مرجع API لـ GroupDocs.Merger
- أمثلة الأكواد لـ GroupDocs.Merger على GitHub
- صفحة الإصدارات لـ GroupDocs.Merger
النسخة التجريبية المجانية والترخيص المؤقت
يمكنك تنزيل نسخة تجريبية مجانية من GroupDocs.Merger من صفحة الإصدارات. بالإضافة إلى ذلك، يمكنك الحصول على ترخيص مؤقت لأغراض تقييمية على شراء ترخيص مؤقت. يسمح لك هذا الترخيص المؤقت بتجربة المكتبة دون أي قيود وتقييم قدراتها بالكامل.