2009-05-13 16 views
18

Sphinx prend en charge quelques formats de sortie:Comment générer des documents Microsoft Word à l'aide Sphinx

  • fichiers HTML multiples (avec html ou dirhtml)
  • latex qui est utile pour créer .pdf ou .ps
  • texte
  • Comment obtenir la sortie dans un fichier Microsoft Word à la place?

Avec un autre générateur de doc j'ai réussi à générer un seul fichier de sortie html, puis le convertir au format Microsoft Word en utilisant l'application Word.

Malheureusement je ne connais pas un moyen de générer Word ou le format HTML d'une seule page.

+3

'make singlehtml' pour générer un fichier html unique. – andho

Répondre

-4

Je ne sais pas ce que Sphinx est, mais vous pouvez créer un fichier rtf ou un fichier html ou quelque chose de similaire.

Voir la blogpost suivante pour plus d'informations/approches: OFFICE AUTOMATION

et à partir de là: How to use ASP to generate a Rich Text Format (RTF) document to stream to Microsoft Word

Cet article décrit comment vous pouvez générer des fichiers Rich Text Format (RTF) avec script ASP puis streamer ces fichiers à Microsoft Word. Cette technique fournit une alternative à l'automatisation côté serveur de Microsoft Word pour la génération de documents d'exécution.

Vous n'utilisez pas le script ASP (qui fait :-)), mais pour l'idée.

1

La meilleure option est peut-être premier -> odt -> doc

5

Pour convertir des fichiers dans le texte restructuré à MSdoc, j'utilise rst2odt et à côté unoconv. Regardez le script suivant:

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

Avec rst2odt vous pouvez utiliser votre propre feuille de style: unoconv est livré avec OpenOffice et permet également d'appliquer un style Open Office (modèle) lors de la conversion. Il suffit de modifier un document converti, modifier les styles, ajouter des en-têtes et pieds de page, sauf que comme ODF texte Modèle de document (OTT) et l'utiliser dans le cadre de la conversion, comme:

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

d'utiliser ce modèle pour différentes conversions plus tard.

+1

Mais cela ne gère pas les fonctionnalités du sphinx complet, juste celles de RsT, correct? – ankostis

1

Je réalise qu'il s'agit d'une vieille question, mais j'ai trouvé que LibreOffice supporte la manière suivante de faire la conversion (en supposant soffice.exe est dans votre chemin):

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

Certaines choses que j'ai lu disent utiliser l'option --headless plutôt que --invisible. Les deux semblent fonctionner sur Windows.

Vous pouvez commencer avec le script rst2odt.py, puis procédez comme ci-dessus pour convertir un document MS Word.

est ici un lien avec options de démarrage supplémentaires pour LibreOffice: http://help.libreoffice.org/Common/Starting_the_Software_With_Parameters

Voici un lien avec les types de fichiers pris en charge par OpenOffice qui, je crois, LibreOffice devrait également soutenir: http://wiki.services.openoffice.org/wiki/Framework/Article/Filter/FilterList_OOo_3_0

+0

Rien à voir avec Sphinx. – Wtower

6

Il est Sphinx extension pour générer docx format (que je n'ai pas testé) et un newer one (que je n'ai pas non plus testé)

+0

Je ne les ai pas testés, mais je les ajoute ici car ils sont clairement produits pour résoudre le problème du questionneur, sont plus directs et moins compliqués que les alternatives actuellement proposées, et suivent les liens et les idées ici probablement gagnés Ne vous amène pas à eux ... –

+1

S'il vous plaît commentaires si vous avez utilisé avec succès - et lequel était le meilleur! –

+0

J'ai essayé d'utiliser le second mais je n'ai pas pu l'installer. – ffleandro

0

Cette réponse n'est pas une solution de ligne de commande et il est pas évidemment le meilleur, mais ça marche tout simplement pour moi et économise mon temps. Après avoir généré le fichier html 1, vous pouvez ouvrir le fichier html généré avec un navigateur et copier la page entière (Crtl + a et Ctrl + c), puis exécuter Microsoft Office (ou utiliser la version en direct si vous n'avez pas Microsoft Windows, comme moi) et collez-y (Ctrl + v).

0

Il s'agit d'une solution de contournement utilisant Caliber (https://calibre-ebook.com), qui inclut un convertisseur puissant. Cela a bien fonctionné et la plupart du formatage sont conservés:

  • Generate sortie epub dans Sphinx make epub
  • sortie Importation epub en Caliber puis convertir epub à docx en utilisant le convertisseur ebook intégré.

Réponse est trop tardive pour la question originale, mais les utilisateurs qui pensent au même problème peuvent trouver cela utile.

0

La solution que j'utilise est un constructeur singlehtml comme andho mentionné dans le commentaire, puis convertit le html en docx en utilisant pandoc. L'exemple suivant suppose le code HTML généré serait situé à _build/singlehtml/index.html

make singlehtml 
cd _build/singlehtml/ 
pandoc -o index.docx index.html 
Questions connexes