Pregunta

Estoy tratando de fusionar dos docx-documentos en un documento docx utilizando OpenXML SDK 2.0. Los documentos deberían fusionarse sin perder sus cabeceras y pies de página de estilo y personalizados. Espero poder lograrlo usando AltChunk y un salto de sección. Pero no puedo conseguir que funcione.

¿Es posible lo que estoy tratando de hacer? Alguien me puede dar una pista de cómo lograr esto?

¿Fue útil?

Solución 2

El uso de la 'herramienta de productividad Open XML' He analizado la estructura de un documento docx-y concluyó que la fusión de documentos con su estilo, encabezados, pies de página, ... no es posible fuera de la caja usando Altchunk. Puede descargar la herramienta de éste por separado desde el Open XML SDK .

Lo que estoy haciendo ahora, y lo que está funcionando, se copia todo manualmente en el documento, asegurándose de que todas las referencias de estilo, de encabezado y pie de página, referencias referencias, ... se conservan. Esto quiere decir que les doy un nuevo identificador único antes de copiarlos en el documento y cambiar todas las referencias de la antigua id para el nuevo ID. Hay una gran cantidad de código para hacer esto, pero la herramienta se mencionó anteriormente ayudado realmente.

Adición de un salto de sección es también bastante difícil. Usted debe saber que el SectionProperties -tag describe todas las propiedades de la sección y que no puede haber una SectionProperties-tag bajo la etiqueta Body, que describe las propiedades de la última sección. Por lo que añadir una nueva sectionbreak, significa copiar la última SectionProperties-etiqueta para el último párrafo de la sección y añadiendo una nueva SectionProperties etiqueta bajo la etiqueta Body. También me dio al gran cantidad de información de la herramienta de productividad.

Otros consejos

La respuesta anterior no es correcto en absoluto! Esto es exactamente lo AltChunk ha sido diseñado para hacer, y funciona muy bien!

NOTA: que los documentos no se fusionarán en un solo documento hasta Word abre el archivo por primera vez (., Obviamente, el archivo tiene que ser guardado o el archivo en el disco no se actualizarán)

Vea este blog para obtener más información sobre cómo hacerlo correctamente: https://blogs.msdn.com/b/ericwhite/archive/2008/10/27/how-to-use-altchunk-for-document-assembly.aspx?Redirected=true

p.s. En cuanto a examinar Open XML utilizando la herramienta de productividad, mi opinión es instalar sólo el oficial de Visual Studio Open XML add-on y abrir los documentos de Office desde Visual Studio para examinarlos, es muy práctico! : -)

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top