إدراج وإلحاق المستندات
في بعض الأحيان يكون من الضروري دمج عدة مستندات في وثيقة واحدة. يمكنك القيام بذلك يدويًا أو يمكنك استخدام ميزة إدراج أو إلحاق Aspose.Words.
تتيح لك عملية الإدراج إدراج محتوى المستندات التي تم إنشاؤها مسبقًا في مستند جديد أو موجود.
وفي المقابل، تسمح لك ميزة الإلحاق بإضافة مستند فقط في نهاية مستند آخر.
تشرح هذه المقالة كيفية إدراج مستند أو إلحاقه بمستند آخر بطرق مختلفة، كما توضح الخصائص الشائعة التي يمكنك تطبيقها أثناء إدراج المستندات أو إلحاقها.
قم بإدراج مستند
كما ذكرنا أعلاه، يتم تمثيل المستند في Aspose.Words كشجرة من العقد، وعملية إدراج مستند إلى آخر هي نسخ العقد من شجرة المستند الأولى إلى الشجرة الثانية.
يمكنك إدراج المستندات في مجموعة متنوعة من المواقع بطرق مختلفة. على سبيل المثال، يمكنك إدراج مستند من خلال عملية استبدال، أو حقل دمج أثناء عملية دمج، أو عبر إشارة مرجعية.
يمكنك أيضًا استخدام أسلوب insert_document أو insert_document_inline، الذي يشبه إدراج مستند في Microsoft Word، لإدراج مستند كامل في موضع المؤشر الحالي دون أي استيراد سابق.
يوضح مثال التعليمات البرمجية التالي كيفية إدراج مستند باستخدام طريقة Insert_document:
يوضح مثال التعليمات البرمجية التالي كيفية إدراج مستند باستخدام طريقة Insert_document_inline:
تصف الأقسام الفرعية التالية الخيارات التي يمكنك من خلالها إدراج مستند في مستند آخر.
أدخل مستندًا في الإشارة المرجعية
يمكنك استيراد ملف نصي إلى مستند وإدراجه مباشرة بعد الإشارة المرجعية التي حددتها في المستند. للقيام بذلك، قم بإنشاء فقرة ذات إشارة مرجعية حيث تريد إدراج المستند.
يوضح مثال الترميز التالي كيفية إدراج محتويات مستند ما في إشارة مرجعية في مستند آخر:
إلحاق مستند
قد تكون لديك حالة استخدام حيث تحتاج إلى تضمين صفحات إضافية من مستند إلى نهاية مستند موجود. للقيام بذلك، تحتاج فقط إلى استدعاء الأسلوب append_document لإضافة مستند إلى نهاية مستند آخر.
يوضح مثال التعليمات البرمجية التالي كيفية إلحاق مستند بنهاية مستند آخر:
استيراد العقد وإدراجها يدويًا
يسمح لك Aspose.Words بإدراج المستندات وإلحاقها تلقائيًا دون أي متطلبات استيراد سابقة. ومع ذلك، إذا كنت بحاجة إلى إدراج عقدة معينة في مستندك أو إلحاقها، مثل قسم أو فقرة، فستحتاج أولاً إلى استيراد هذه العقدة يدويًا.
عندما تحتاج إلى إدراج أو إلحاق قسم أو فقرة بأخرى، فإنك تحتاج بشكل أساسي إلى استيراد العقد الخاصة بشجرة عقدة المستند الأولى إلى الشجرة الثانية باستخدام طريقة import_node. بعد استيراد العقد الخاصة بك، تحتاج إلى استخدام طريقة insert_after / insert_before لإدراج عقدة جديدة بعد/قبل العقدة المرجعية. يتيح لك ذلك تخصيص عملية الإدراج عن طريق استيراد العقد من مستند وإدراجها في مواضع معينة.
يمكنك أيضًا استخدام طريقة append_child لإضافة عقدة محددة جديدة إلى نهاية قائمة العقد التابعة، على سبيل المثال، إذا كنت تريد إلحاق محتوى على مستوى الفقرة بدلاً من مستوى القسم.
يوضح مثال التعليمات البرمجية التالي كيفية استيراد العقد يدويًا وإدراجها بعد عقدة معينة باستخدام طريقة insert_after:
يتم استيراد المحتوى إلى المستند الوجهة قسمًا تلو الآخر، مما يعني أنه يتم الاحتفاظ بالإعدادات، مثل إعداد الصفحة والرؤوس أو التذييلات، أثناء الاستيراد. من المفيد أيضًا ملاحظة أنه يمكنك تحديد إعدادات التنسيق عند إدراج مستند أو إلحاقه لتحديد كيفية ضم مستندين معًا.
الخصائص العامة لإدراج المستندات وإلحاقها
تقبل كل من طريقتي insert_document وappend_document ImportFormatMode وImportFormatOptions كمعلمات إدخال. يسمح لك ImportFormatMode بالتحكم في كيفية دمج تنسيق المستند عند استيراد محتوى من مستند إلى آخر عن طريق تحديد أوضاع تنسيق مختلفة مثل USE_DESTINATION_STYLES وKEEP_SOURCE_FORMATTING وKEEP_DIFFERENT_STYLES. يتيح لك ImportFormatOptions تحديد خيارات استيراد مختلفة مثل ignore_header_footer وignore_text_boxes وkeep_source_numbering وmerge_pasted_lists وsmart_style_behavior.
يتيح لك Aspose.Words ضبط تصور المستند الناتج عند إضافة مستندين معًا في عملية إدراج أو إلحاق باستخدام Section وPageSetup. تحتوي الخاصية page_setup على جميع سمات القسم مثل section_start وrestart_page_numbering وpage_starting_number وorientation وغيرها. حالة الاستخدام الأكثر شيوعًا هي تعيين خاصية section_start لتحديد ما إذا كان المحتوى المضاف سيظهر على نفس الصفحة أو سيتم تقسيمه إلى محتوى جديد.
يوضح مثال التعليمات البرمجية التالي كيفية إلحاق مستند بآخر مع منع تقسيم المحتوى عبر صفحتين: