إدراج وإلحاق المستندات
في بعض الأحيان يكون من الضروري دمج عدة مستندات في وثيقة واحدة. يمكنك القيام بذلك يدويًا أو يمكنك استخدام ميزة إدراج أو إلحاق Aspose.Words.
تتيح لك عملية الإدراج إدراج محتوى المستندات التي تم إنشاؤها مسبقًا في مستند جديد أو موجود.
وفي المقابل، تسمح لك ميزة الإلحاق بإضافة مستند فقط في نهاية مستند آخر.
تشرح هذه المقالة كيفية إدراج مستند أو إلحاقه بمستند آخر بطرق مختلفة، كما توضح الخصائص الشائعة التي يمكنك تطبيقها أثناء إدراج المستندات أو إلحاقها.
أدخل مستند
كما ذكرنا أعلاه، يتم تمثيل المستند في Aspose.Words كشجرة من العقد، وعملية إدراج مستند إلى آخر هي نسخ العقد من شجرة المستند الأولى إلى الشجرة الثانية.
يمكنك إدراج المستندات في مجموعة متنوعة من المواقع بطرق مختلفة. على سبيل المثال، يمكنك إدراج مستند من خلال عملية استبدال، أو حقل دمج أثناء عملية دمج، أو عبر إشارة مرجعية.
يمكنك أيضًا استخدام طريقة InsertDocument أو InsertDocumentInline، التي تشبه إدراج مستند في Microsoft Word، لإدراج مستند كامل في موضع المؤشر الحالي دون أي استيراد سابق.
يوضح مثال التعليمات البرمجية التالي كيفية إدراج مستند باستخدام طريقة InsertDocument:
يوضح مثال التعليمات البرمجية التالي كيفية إدراج مستند باستخدام طريقة InsertDocumentInline:
تصف الأقسام الفرعية التالية الخيارات التي يمكنك من خلالها إدراج مستند في مستند آخر.
قم بإدراج مستند أثناء عملية البحث والاستبدال
يمكنك إدراج المستندات أثناء إجراء عمليات البحث والاستبدال. على سبيل المثال، يمكن أن يحتوي المستند على فقرات تحتوي على النص [مقدمة] و[استنتاج]. لكن في الوثيقة النهائية، تحتاج إلى استبدال تلك الفقرات بالمحتوى الذي تم الحصول عليه من مستند خارجي آخر. لتحقيق ذلك، ستحتاج إلى إنشاء معالج لحدث الاستبدال.
يوضح مثال التعليمات البرمجية التالي كيفية إنشاء معالج لحدث الاستبدال لاستخدامه لاحقًا في عملية الإدراج:
يوضح مثال التعليمات البرمجية التالي كيفية إدراج محتوى مستند في مستند آخر أثناء عملية البحث والاستبدال:
أدخل مستندًا أثناء عملية Mail Merge
يمكنك إدراج مستند في حقل دمج أثناء عملية mail merge. على سبيل المثال، يمكن أن يحتوي قالب mail merge على حقل دمج مثل [الملخص]. ولكن في المستند النهائي، تحتاج إلى إدراج المحتوى الذي تم الحصول عليه من مستند خارجي آخر في حقل الدمج هذا. لتحقيق ذلك، سوف تحتاج إلى إنشاء معالج لحدث الدمج.
يوضح مثال التعليمات البرمجية التالي كيفية إنشاء معالج لحدث الدمج لاستخدامه لاحقًا في عملية الإدراج:
يوضح مثال التعليمات البرمجية التالي كيفية إدراج مستند في حقل الدمج باستخدام المعالج الذي تم إنشاؤه:
أدخل مستندًا في الإشارة المرجعية
يمكنك استيراد ملف نصي إلى مستند وإدراجه مباشرة بعد الإشارة المرجعية التي حددتها في المستند. للقيام بذلك، قم بإنشاء فقرة ذات إشارة مرجعية حيث تريد إدراج المستند.
يوضح مثال الترميز التالي كيفية إدراج محتويات مستند ما في إشارة مرجعية في مستند آخر:
إلحاق مستند
قد تكون لديك حالة استخدام حيث تحتاج إلى تضمين صفحات إضافية من مستند إلى نهاية مستند موجود. للقيام بذلك، تحتاج فقط إلى استدعاء الأسلوب AppendDocument لإضافة مستند إلى نهاية مستند آخر.
يوضح مثال التعليمات البرمجية التالي كيفية إلحاق مستند بنهاية مستند آخر:
استيراد العقد وإدراجها يدويًا في
يسمح لك Aspose.Words بإدراج المستندات وإلحاقها تلقائيًا دون أي متطلبات استيراد سابقة. ومع ذلك، إذا كنت بحاجة إلى إدراج عقدة معينة في مستندك أو إلحاقها، مثل قسم أو فقرة، فستحتاج أولاً إلى استيراد هذه العقدة يدويًا.
عندما تحتاج إلى إدراج قسم أو فقرة أو إلحاقها بقسم أو فقرة أخرى، فإنك تحتاج بشكل أساسي إلى استيراد العقد الخاصة بشجرة عقدة المستند الأولى إلى الشجرة الثانية باستخدام طريقة ImportNode. بعد استيراد العقد الخاصة بك، تحتاج إلى استخدام طريقة InsertAfter / InsertBefore لإدراج عقدة جديدة بعد/قبل العقدة المرجعية. يتيح لك ذلك تخصيص عملية الإدراج عن طريق استيراد العقد من مستند وإدراجها في مواضع معينة.
يمكنك أيضًا استخدام طريقة AppendChild لإضافة عقدة محددة جديدة إلى نهاية قائمة العقد التابعة، على سبيل المثال، إذا كنت تريد إلحاق محتوى على مستوى الفقرة بدلاً من مستوى القسم.
يوضح مثال التعليمات البرمجية التالي كيفية استيراد العقد يدويًا وإدراجها بعد عقدة معينة باستخدام طريقة InsertAfter:
يتم استيراد المحتوى إلى المستند الوجهة قسمًا تلو الآخر، مما يعني أنه يتم الاحتفاظ بالإعدادات، مثل إعداد الصفحة والرؤوس أو التذييلات، أثناء الاستيراد. من المفيد أيضًا ملاحظة أنه يمكنك تحديد إعدادات التنسيق عند إدراج مستند أو إلحاقه لتحديد كيفية ضم مستندين معًا.
الخصائص العامة لإدراج المستندات وإلحاقها
تقبل كل من طريقتي InsertDocument وAppendDocument ImportFormatMode وImportFormatOptions كمعلمات إدخال. يتيح لك ImportFormatMode التحكم في كيفية دمج تنسيق المستند عند استيراد محتوى من مستند إلى آخر عن طريق تحديد أوضاع تنسيق مختلفة مثل UseDestinationStyles وKeepSourceFormatting وKeepDifferentStyles. يتيح لك ImportFormatOptions تحديد خيارات استيراد مختلفة مثل IgnoreHeaderFooter، وIgnoreTextBoxes، وKeepSourceNumbering، وMergePastedLists، وSmartStyleBehavior.
يتيح لك Aspose.Words ضبط تصور المستند الناتج عند إضافة مستندين معًا في عملية إدراج أو إلحاق باستخدام خصائص Section وPageSetup. تحتوي الخاصية PageSetup على جميع سمات القسم مثل SectionStart وRestartPageNumbering وPageStartingNumber وOrientation وغيرها. حالة الاستخدام الأكثر شيوعًا هي تعيين خاصية SectionStart لتحديد ما إذا كان المحتوى المضاف سيظهر على نفس الصفحة أو سيتم تقسيمه إلى محتوى جديد.
يوضح مثال التعليمات البرمجية التالي كيفية إلحاق مستند بآخر مع منع تقسيم المحتوى عبر صفحتين: