Perder la etiqueta de superíndice al convertir HTML a DOCX usando libreoffice
converter (4)
Tengo el siguiente HTML:
<html><body><p>n<sup>th</sup></p></body></html>
Estoy usando el comando:
$ libreoffice --convert-to docx: "MS Word 2007 XML" test.html
Para convertir ese HTML en un archivo DOCX. Sin embargo, observo que el archivo DOCX resultante no contiene realmente la etiqueta <sup>
. Parece que usa la posición y el tamaño para replicar la etiqueta <w:vertAlign>
:
<w:position w:val="8"/><w:sz w:val="19"/>
Lo que necesitaría saber es cómo hacer que libreoffice se coloque en la etiqueta <w:vertAlign>
lugar de usar la posición y el tamaño.
Información adicional:
Tuve un problema similar con negrita y cursiva ( <strong><em>
) pero pude lograr que la conversión funcionara correctamente si convertía las etiquetas strong
y em
etiquetas b
e i
respectivamente.
El comando funciona bien si reemplazas ''docx'' con ''xml'', como esto:
libreoffice --convert-to xml:"MS Word 2003 XML" test.html
Puedes intentar usar un editor WYSIWYG (Lo que ves es lo que obtienes) como TinyMCE ( http://www.tinymce.com/ ). Hay muchos de ellos en línea y también puedes encontrar algunas aplicaciones de escritorio para eso. pero si quieres convertirlo en docx, puedes probar este http://htmltodocx.codeplex.com/ , está escrito en php y usa PHPWord y es bastante eficiente.
Si desea editar el HTML, sería mucho mejor utilizar una herramienta adecuada para editar HTML, como Notepad ++ o Sublime (como ejemplos).
Si necesita tener el HTML como un documento de LibreOffice por una razón específica, puede abrir el archivo HTML en el Bloc de notas y guardarlo como un archivo de texto con .txt como la extensión. Eso debería permitirle abrir el documento en LibreOffice.
Simplemente cree un script de Python que reemplace sus etiquetas no deseadas con la etiqueta <w:vertAlign>
donde sea necesario.