سؤال

أحاول دمج اثنين من الدائمين docx في حجة واحدة docx باستخدام OpenXML SDK 2.0. يجب دمج المستندات دون فقدان الرؤوس والتذييلات المخصصة. آمل أن أتمكن من تحقيق ذلك باستخدام AltChunk وكسر قسم. لكن لا يمكنني تشغيلها.

هل من الممكن ما أحاول فعله؟ هل يمكن لأي شخص أن يعطيني تلميحًا كيف تحقيق ذلك؟

هل كانت مفيدة؟

المحلول 2

باستخدام "أداة إنتاجية XML المفتوحة" ، قمت بتحليل بنية حجة DOCX ، وخلصت إلى أن دمج المستندات بأسلوبها ورؤوسها وتذييلاتها ، ... غير ممكن من الصندوق باستخدام Altchunk. يمكنك تنزيل الأداة speratly من افتح XML SDK.

ما أفعله الآن ، وما الذي ينجح ، هو نسخ كل شيء يدويًا للتوثيق ، مع التأكد من أن جميع المراجع ، المراجع ، المراجع ، مراجعات تذييل ، ... محفوظة. هذا يعني أنني أعطيهم معرفًا فريدًا جديدًا قبل أن أقوم بنسخهم إلى المستند وتغيير جميع المراجع من المعرف القديم إلى المعرف الجديد. هناك الكثير من التعليمات البرمجية للقيام بذلك ، لكن الأداة المذكورة أعلاه ساعدت حقًا.

إضافة استراحة قسم أمر صعب للغاية. يجب أن تعرف أن ال SectionProperties-يصف Tag جميع خصائص القسم وأنه يمكن أن يكون هناك واحد SectionProperties-الأشكال تحت Body-TAG ، وصف خصائص القسم الأخير. لذا فإن إضافة قسم جديد ، يعني نسخ آخر مرة SectionProperties-راج إلى الفقرة الأخيرة من القسم وإضافة جديد SectionProperties-الأشكال تحت Body-بطاقة شعار. حصلت أيضًا على الكثير من المعلومات من أداة الإنتاجية.

نصائح أخرى

الجواب أعلاه غير صحيح على الإطلاق! هذا هو بالضبط ما تم تصميم Altchunk للقيام به ، وهو يعمل بشكل رائع!

ملاحظة: لن يتم دمج المستندات في مستند واحد حتى تفتح Word الملف لأول مرة (من الواضح أن الملف يجب حفظه أو لن يتم تحديث الملف على القرص.)

شاهد هذه المدونة لمزيد من المعلومات حول كيفية القيام بذلك بشكل صحيح:https://blogs.msdn.com/b/ericwhite/archive/2008/10/27/how-to-use-altchunk-for-document-assembly.aspx؟redireged=true

PS أما بالنسبة لفحص XML المفتوح باستخدام أداة الإنتاجية ، فإن رأيي هو مجرد تثبيت الإضافة الرسمية لـ Visual Studio Open XML وفتح مستندات Office من Visual Studio لفحصها ، إنه مريح للغاية! :-)

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top