2009-05-13 12 views
18

Sphinx soporta pocos formatos de salida:Cómo generar documentos de Microsoft Word usando Sphinx

  • archivos HTML múltiples (con html o dirhtml)
  • látex que es útil para crear .pdf o .ps
  • texto

¿Cómo puedo obtener resultados en un archivo de Microsoft Word?

Con otro generador de documentos logré generar un solo archivo de salida html y luego convertirlo a formato de Microsoft Word utilizando la aplicación Word.

Desafortunadamente, no sé cómo generar Word o el formato HTML de una sola página.

+3

'make singlehtml' para generar único archivo HTML. – andho

Respuesta

-4

Ahora no sé qué es Sphinx, pero podría crear un archivo rtf o html o algo similar.

Consulte la siguiente entrada de blog para más información/enfoques: OFFICE AUTOMATION

y desde allí: How to use ASP to generate a Rich Text Format (RTF) document to stream to Microsoft Word

En este artículo se describe cómo se puede generar formato de texto enriquecido (RTF) archivos con secuencias de comandos ASP y luego transmitir esos archivos a Microsoft Word. Esta técnica proporciona una alternativa a la automatización del lado del servidor de Microsoft Word para la generación de documentos en tiempo de ejecución.

No utiliza el script ASP (que lo hace :-)), pero para la idea.

1

La mejor opción podría ser la primera -> ODT -> doc

5

para convertir archivos de texto reestructurado a MSdoc, utilizo rst2odt y junto unoconv. Mira siguiente secuencia de comandos:

#!/bin/sh 
rst2odt $1 $1.odt 
unoconv -f doc $1.odt 
rm $1.odt 

Con rst2odt puede utilizar su propia hoja de estilo: unoconv viene con OpenOffice y también permite aplicar un estilo de Open Office (plantilla) durante la conversión. Basta con editar un documento convertido, cambiar estilos, agregar encabezados y pies de página, salvo que como un texto ODF plantilla de documento (OTT) y utilizar esto como parte de la conversión, como:

unoconv -f doc -t template.ott $1.odt 

usar ese modelo para varias conversiones mas tarde.

+1

Pero eso no maneja todas las funciones de esfinge, solo las de RsT, ¿correcto? – ankostis

1

Me doy cuenta de que esta es una vieja pregunta, pero encontré que LibreOffice admite la siguiente forma de conversión (suponiendo que soffice.exe se encuentra en su camino):

soffice.exe --invisible --convert-to doc myInputFile.odt 

Algunas cosas que he leído dicen que utilizar la opción --headless en lugar de --invisible. Ambos parecen funcionar en Windows.

Puede comenzar con el script rst2odt.py y luego hacer lo anterior para convertir a un documento de MS Word.

Aquí hay un enlace con opciones de puesta en marcha adicionales para LibreOffice: http://help.libreoffice.org/Common/Starting_the_Software_With_Parameters

Aquí hay un enlace con los tipos de archivos compatibles con OpenOffice que, creo, LibreOffice también debe apoyar: http://wiki.services.openoffice.org/wiki/Framework/Article/Filter/FilterList_OOo_3_0

+0

Nada que ver con Sphinx. – Wtower

6

Hay un Sphinx extension para generar docx formato (que no he probado) y un newer one (que también no he probado)

+0

No los he probado, pero los añado aquí, ya que están claramente producidos para resolver el problema que tenía el que pregunta, son más directos y menos intrincados que las alternativas actualmente propuestas, y siguiendo los enlaces e ideas probablemente ganados aquí Te guiaré hacia ellos ... –

+1

¡Haznos tus comentarios si has usado esto con éxito, y cuál fue el mejor! –

+0

Intenté usar el segundo pero no pude instalar sus requisitos. – ffleandro

0

Esta respuesta no es una solución de línea de comandos y es obviamente no es el mejor, pero simplemente funciona para mí y me ahorra tiempo. Después de generar el archivo html 1, puede abrir el html generado con un navegador y copiar la página completa (Ctrl + a y Ctrl + C) y luego ejecutar Microsoft Office (o usar la versión en vivo si no tiene Microsoft Windows, como yo) y pegar (Ctrl + v) a ella.

0

Esto es una solución usando Calibre (https://calibre-ebook.com), que incluye un convertidor potente. Esto funcionó bien y la mayor parte del formato se conservan:

  • generar una salida epub en Sphinx make epub
  • salida de importación epub en calibre y luego convertir a epub docx utilizando convertidor de libro electrónico incorporado.

La respuesta es demasiado tarde para la pregunta original, pero a las personas que buscan el mismo problema les puede resultar útil.

0

La solución que uso es compilador de singlehtml como andho mencionado en el comentario, luego convierta el html a docx usando pandoc. El siguiente ejemplo supone el HTML generado se encuentra en _build/SingleHTML/index.html

make singlehtml 
cd _build/singlehtml/ 
pandoc -o index.docx index.html 
Cuestiones relacionadas