Pregunta

Estoy trabajando con documentos docx, y tengo que analizar un documento en secciones sobre la base de las partidas de estilo con el estilo "Título 1". Así que si tuviera un documento como éste (marcado es pseudocódigo):

<doc>
<title style>Doc Title</title style>
<heading1>First Section</heading1>
...
<heading2>Second Section</heading2>
...
<heading3>Third Section</heading3>
...
</doc>

Yo querría romper esto en un documento con cuatro secciones, siendo la primera el contenido que precede a la primera sección. Calculo que esto es probablemente bastante simple una vez que esté familiarizado con Open XML, pero yo no.

TIA.

¿Fue útil?

Solución

Vaya ... ni siquiera hay puntos de vista sobre esta cuestión durante todo el día. Bueno, lo he descubierto y pensé en compartir la riqueza. No puedo compartir el código directamente, pero es sólo tres bucles anidados, un bucle a través de los párrafos, entonces las carreras de párrafo, a continuación, los estilos. El XPath para cada uno de aquellos es:

.//w:p
./w:pPr
./w:pStyle

Una vez que encuentre una carrera con el estilo que te gusta, POP volver a un nivel superior para obtener la primera carrera, que contendrá el texto con estilo. A partir de ahí, es sólo Comp Sci 101 cosas. Creo que el verdadero avance fue ni siquiera tratar de meterse con el SDK de XML abierto (aparte del material de embalaje IO), e ir directamente a la manipulación de XML.

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