2009-07-31 2 views
13

Я использовал LaTeX для написания нескольких белых документов, когда был в школе градации. От этого у меня очень хорошее впечатление об этом, с точки зрения того, что LaTeX позволяет пользователю делать, особенно тонкий контроль, который он предоставляет для форматирования, и т. Д.LaTeX для генерации PDF в производстве

Теперь я обсуждаю, должен ли я фактически использовать LaTeX для наших производственных приложений создавать PDF-файлы. Я пробовал несколько коммерческих и бесплатных PDF-библиотек (PDFSharp/MigraDoc, iTextSharp, Expert PDF и т. Д.), И ни один из них не обеспечивает объем тонкого контроля, который мне нужен, не делая базу кода чрезвычайно сложно поддерживать в долгосрочной перспективе.

Если я решаю пройти этот маршрут, это будет сделано с C#. Поскольку у LaTeX уже есть интерфейс командной строки, я должен сделать это довольно легко с C# в качестве внешнего процесса, выложенного из моей программы.

Но я искал комментарии сообщества.

  1. Кто-нибудь попробовал? Если да, то какие были ошибки?
  2. Что вы думаете об этой идее - за и против (меня больше интересуют gotachas)?

Вся обратная связь приветствуется.

+0

Привет, У меня была такая же идея, может быть, вы можете рассказать о своем решении и своем опыте. – john84

ответ

7

Я создал платформу для генерации отчетов, которая использует простой TeX (в частности, MiKTeX implementation) для создания отчетов в формате PDF. Платформа используется для создания примерно пятидесяти отчетов в месяц различной природы (содержащих в основном динамически создаваемые таблицы и диаграммы). Система довольно гибкая. Отчеты определяются через XML (по внутренней заданной схеме описания отчета). Платформа позволяет пользователю указывать таблицу исходной базы данных, какие поля извлекать, форматировать поля, мини-язык запросов для фильтрации соответствующих данных, а также различные элементы форматирования (ориентация страницы, размер, заголовки и классификации (" Public "," Internal "," Confidential "и т. Д.).

Основной« gotcha »состоит в том, что требуется тонна работы, чтобы получить базу кода, которая гибка для изменения, а не полная боль для второй «gotcha» заключается в том, что знание TeX (за пределами академических кругов) редко, поэтому вы можете стать фактическим разработчиком, даже если это не является частью вашей обычной роли.

Плюсы:

  1. Красиво отформатированные отчеты.
  2. Полный контроль над планировкой и взглядом.
  3. Бесплатно.

Минусы:

  1. Трудно правильно реализовать.
  2. Сложно поддерживать.
  3. Переход знаний может быть обременительным.
  4. Поддержка фактически не существует.
+2

«Официальная» поддержка может отсутствовать, но есть много списков рассылки и форм для обсуждения TeX и LaTeX. – Mica

+0

Не говоря уже о сайте stackexchange для tex. http://tex.stackexchange.com/ –

0

Я сделал несколько внутренних документов «уровня производства» в LaTeX.

Создание документов LaTeX в Windows - это, конечно, ужасный опыт, если честно. Я никогда не мог найти решения, кроме Cygwin. После того, как вы создали среду Cygwin, она была такой же простой, как выбор LaTeX и связанных с ним библиотек от setup.exe от Cygwin.

Я не пробовал запускать LaTeX из среды, отличной от Cygwin, но теоретически вы должны просто запустить C:\Cygwin\usr\bin\latex.exe - тогда есть шанс, что это будет отсутствовать, поскольку вы не находитесь в Bash, в котором вам может потребоваться просто передать каталоги include в последующие программы.

Если вы решили использовать Docbook вместо LaTeX для документации (и я рекомендовал бы по крайней мере дать ему вид, это много более структурированным для программного обеспечения, связанных с техническим documentaion), у меня был хороший опыт ведения dblatex под Cygwin , Это не в репозиториях Cygwin, но это кусок пирога для установки из источника.

+2

Только Cygwin? Были ли проблемы с MiKTeX? –

+0

Никогда не пробовал MiKTeX, он мог бы работать лучше. –

+2

MiKTeX хорошо работает. Вы можете получить доступ к командной строке Windows. И через .bat файлы. – Mica

0

Я сделал различные производственные PDF-версии с использованием TeX. Я закончил тем, что отказался от LaTeX, и пошел с ConTeXt (см. Также Context Garden).

Существует очень активный список рассылки, он широко используется для производства документов, а также имеется минимальное распространение для разных Unix, Windows и Mac OS X. Нет необходимости в Cygwin для Windows (хотя вам действительно нужно Рубин).

Я нахожу подход ConTeXt к очистителю TeX, чем LaTeX, но это может быть только я.

0

Если вам нужно опубликовать сводки данных и график, вы можете посмотреть Sweave. Sweave позволяет смешивать все функции R с TeX. Исходный код отчета состоит из простого файла TeX с некоторым фрагментом кода R-кода, так как вам нужно читать, манипулировать, приводить в таблицу или строить данные. Затем вы компилируете файл Sweave (из командной строки), который возвращает простой файл TeX.