2009-07-31 18 views
13

J'ai utilisé LaTeX pour écrire quelques livres blancs pendant mes études supérieures. De cela, j'ai une très bonne impression sur ce que LaTeX permet à l'utilisateur de faire, en particulier le contrôle fin de la mise en forme, etc.LaTeX pour la génération PDF en production

Maintenant, je me demande si je devrais réellement utiliser LaTeX pour nos applications de production. générer des PDF. J'ai essayé plusieurs bibliothèques PDF commerciales et gratuites (PDFSharp/MigraDoc, iTextSharp, PDF Expert, etc.) et aucune d'entre elles ne fournit la quantité de contrôle fin dont j'ai besoin sans rendre la base de code extrêmement difficile à maintenir à long terme.

Si je décide d'emprunter cette route, cela sera fait en C#. Puisque LaTeX possède déjà une interface de ligne de commande, je devrais être capable de le faire assez facilement à partir de C# en tant que processus externe issu de mon programme.

Mais je cherchais des commentaires de la communauté.

  1. Quelqu'un a-t-il déjà essayé? Si oui, quels étaient les pièges?
  2. Que pensez-vous de l'idée - avantages et inconvénients (je suis plus intéressé par les gotachas)?

Tous les commentaires sont les bienvenus.

+0

Hey, J'ai eu la même idée, peut-être que vous pouvez dire quelque chose sur votre décision et votre expérience. – john84

Répondre

7

J'ai précédemment construit une plate-forme pour la génération de rapports qui utilise TeX simple (en particulier le MiKTeX implementation) pour générer des rapports au format PDF. La plate-forme est utilisée pour générer une cinquantaine de rapports par mois de nature variable (contenant principalement des tableaux et des graphiques générés dynamiquement). Le système est assez flexible. Les rapports sont définis via XML (sur un schéma de description de rapport défini en interne). La plateforme permet à l'utilisateur de spécifier une table de base de données source, les champs à extraire, la mise en forme des champs, un mini langage de requête pour filtrer les données appropriées ainsi que divers éléments de formatage (orientation, taille, titres et classifications Public "," Internal "," Confidentiel ", etc.)

Le principal" gotcha "est qu'il faut beaucoup de travail pour se retrouver avec une base de code qui est flexible pour changer et pas une douleur totale à Maintenir Un second "getcha" est que la connaissance de TeX (en dehors des académiques) est rare, donc vous pourriez finir par devenir le mainteneur de facto même si cela ne fait pas partie de votre rôle habituel.

Plus:

  1. rapports Magnifiquement mis en forme.
  2. Contrôle complet de la disposition et de l'apparence.
  3. Gratuit.

Moins:

  1. Difficile à mettre en œuvre correctement.
  2. Difficile à maintenir.
  3. La transition de connaissances pourrait être fastidieuse.
  4. Le support est effectivement inexistant.
+2

Le support "officiel" est peut-être inexistant, mais il existe de nombreuses listes de diffusion et formulaires pour discuter de TeX et de LaTeX. – Mica

+0

Sans oublier le site stackexchange pour tex. http://tex.stackexchange.com/ –

0

J'ai réalisé quelques documents internes de "niveau de production" dans LaTeX.

Générer des documents LaTeX sous Windows est une expérience horrible, pour être honnête. Je n'ai jamais pu trouver de solution autre que Cygwin. Une fois que l'environnement Cygwin est opérationnel, il était aussi simple que de choisir les bibliothèques LaTeX et les bibliothèques apparentées à partir du setup.exe de Cygwin.

Je n'ai pas essayé d'exécuter LaTeX à partir d'un environnement non-Cygwin, mais en théorie, vous devriez pouvoir exécuter C:\Cygwin\usr\bin\latex.exe - alors il y a des chances qu'il manque des chemins puisque vous n'êtes pas dans Bash, dans lequel Dans le cas où vous auriez besoin de simplement passer les répertoires include aux programmes suivants.

Si vous décidez d'utiliser DocBook de LaTeX pour la documentation (et je recommande au moins donner un coup d'oeil, il est beaucoup plus structuré pour documentaion technique dans le domaine des logiciels), j'ai eu une bonne expérience en cours d'exécution dblatex sous Cygwin . Ce n'est pas dans les dépôts Cygwin, mais c'est un morceau de gâteau à installer à partir de la source.

+2

Seulement Cygwin? Y a-t-il eu des problèmes avec MiKTeX? –

+0

N'a jamais essayé MiKTeX, il pourrait fonctionner mieux. –

+2

MiKTeX fonctionne bien. Vous pouvez accéder via l'invite de commande Windows. Et à travers les fichiers .bat. – Mica

0

J'ai effectué diverses implémentations PDF de production en utilisant TeX. J'ai fini par abandonner LaTeX, et je suis allé avec ConTeXt (voir aussi Context Garden).

Il existe une liste de diffusion très active, elle est largement utilisée pour la production de documents, et il existe une distribution minimale pour les différents Unix, Windows et Mac OS X. Cygwin n'est pas nécessaire sous Windows (bien que vous en ayez besoin Rubis).

Je trouve l'approche ConTeXt pour TeX cleaner plus simple que LaTeX, mais ça pourrait être juste moi.

0

Si vous devez publier des résumés de données et un graphique, vous pouvez consulter Sweave. Sweave permet de mélanger toutes les fonctionnalités de R avec TeX. Le code source d'un rapport est constitué d'un fichier TeX simple avec un fragment de code R si vous avez besoin de lire, de manipuler, de tabuler ou de tracer des données. Ensuite, vous "compilez" le fichier Sweave (à partir de la ligne de commande) qui retourne un fichier TeX simple.

Questions connexes