2009-07-31 105 views
13

我在讀研究生時用LaTeX寫了幾篇白皮書。從我有什麼乳膠允許用戶做的,尤其是精細控制它提供了對格式條款關於它的一個非常好的印象,等用於生成PDF的LaTeX

現在我辯論我是否真的應該使用乳膠爲我們的生產應用到生成PDF文件。我已經嘗試了幾種商業和免費的PDF庫(PDFSharp/MigraDoc,iTextSharp,Expert PDF等),它們都不會提供我所需要的精細控制量,而不會使代碼庫長期難以維護。

如果我決定走這條路線,它將從C#完成。由於LaTeX已經有了命令行界面,我應該可以很容易地從C#中做到這一點,作爲從我的程序中分離出來的外部過程。

但我正在尋找來自社區的一些評論。

  1. 有沒有人嘗試過嗎?如果是這樣,什麼是一些陷阱?
  2. 你對這個想法有什麼看法 - 利弊(我對gotachas更感興趣)?

所有的反饋是值得歡迎的。

+0

嘿, 我有同樣的想法,也許你可以告訴你一些關於你的決定和你的經驗。 – john84 2011-09-21 08:36:35

回答

7

我以前建成的報告生成一個平臺,使用普通的TeX(特別是MiKTeX implementation)來生成PDF格式的報告。該平臺每月生成大約五十份不同性質的報告(包含大部分動態生成的表格和圖表)。該系統非常靈活。報告是通過XML定義的(在內部定義的報告描述模式上)。該平臺允許用戶指定源數據庫表,提取哪些字段,字段的格式,用於過濾適當數據的迷你查詢語言以及各種格式化元素(頁面方向,大小,標題和分類(「公共「,」內部「,」機密「等)

主要的」難題「是需要花費大量的工作才能得到一個靈活變更的代碼庫,第二個「難題」是TeX(學術界以外)的知識很少,所以即使這不是你通常的角色的一部分,你最終可能成爲事實上的維護者。

優點:

  1. 精美格式的報告。
  2. 完全控制佈局和外觀。
  3. 免費。

缺點:

  1. 難以正確實現。
  2. 難以維護。
  3. 知識轉換可能是繁重的。
  4. 支持實際上是不存在的。
0

我在LaTeX中完成了一些內部「生產級」文檔。

在Windows中生成LaTeX文檔是一個總體可怕的經驗,說實話。除了Cygwin之外,我從未能夠找到任何解決方案。一旦啓動並運行Cygwin環境,就像從Cygwin的setup.exe中挑選LaTeX和相關庫一樣簡單。

我還沒有嘗試從非Cygwin環境運行LaTeX,但從理論上講,您應該可以運行C:\Cygwin\usr\bin\latex.exe - 然後有可能會丟失路徑,因爲您不在Bash中,其中您可能需要將include目錄傳遞給後續程序。

如果你決定使用的Docbook代替乳膠您的文檔(我至少會建議給它一看,這是更加結構化與軟件相關的技術文件建立),我已經在Cygwin下運行dblatex好經驗。它不在Cygwin存儲庫中,但它是從源代碼安裝的一塊蛋糕。

+2

只有Cygwin? MiKTeX有沒有問題? – 2009-07-31 04:50:12

+0

從來沒有試過MiKTeX,它可能會更好。 – 2009-07-31 11:03:02

0

我已經完成了使用TeX的各種生產PDF實現。我結束了放棄乳膠,並與ConTeXt(也見Context Garden)。

有一個非常活躍的郵件列表,它廣泛用於文檔製作,並且對於各種Unix,Windows和Mac OS X都有一個很好的最小發行版。在Windows上不需要Cygwin(儘管您確實需要紅寶石)。

我發現ConTeXt對TeX清潔劑比LaTeX清潔,但那可能就是我。

0

如果您需要發佈數據摘要和圖表,那麼你可以看看Sweave。 Sweave允許將R的所有功能與TeX混合使用。報告的源代碼包含一個帶有一些R代碼塊的普通TeX文件,您需要閱讀,操作,製表或繪製數據。然後你「編譯」Sweave文件(從命令行),它返回一個普通的TeX文件。