2013年12月6日 星期五

LaTeX 的「合併列印」--- csvsimple 套件

幾個禮拜前,我需要列印一份 Excel 的資料(這只是泛稱,不代表真的 Microsoft Office 的 Excel 檔案),但是希望格式可以工整一點,因此我想到利用 Word 的合併列印功能。但因為現在都用 LibreOffice, 所以我自然希望用 LibreOffice 裡面的「合併列印」功能,完成這個表單。試了一陣子,發現 LibreOffice 的合併列印功能實在太陽春了,似乎只能印標籤、信件等等,實在不是很好用。

後來我突然想到,不知道能否用 LaTeX 來做?搜尋一下,果然發現有好幾個套件都支援從 CSV (逗點分隔值格式) 抓取資料,稍微瀏覽一下各個套件的範例檔,我覺得 csvsimple 似乎比較好用一點,我就決定來試試看這個套件。

當然一邊看說明文件,一邊照著練習,看完說明文件也剛好做完一個小紀錄文件。

在看說明文件的時候,突然發現 csvsimple 套件的說明文件做的好精緻呀!後來查看說明文件的原始碼,才知道它另外用了 tcolorbox 的套件,所以我也如法炮製試試看。也順便發現了另外一個好用的套件 tcolorbox 。

csvsimple 套件在 LyX 中使用的時候,需要輸入很多 TeX Code,雖然我一開始很排斥看到一大堆 TeX Code 出現在文件中,但習慣之後就覺得,csvsimple 這麼多種功能變化,要做成圖形介面也是很不容易的,所以稍微辛苦,查看一下說明文件再輸入 code,也是可以接受的。

另外說明一下,LyX 原始檔使用 xeCJK 排中文(會用到 5 種 cwTeX TTF 字型),電腦內如果沒有這 5 套字體,會無法排版。可以參考前幾篇介紹 xeCJK 的部份安裝字體。改用 xeCJK, 是因為我原先用 CJK 排的時候,程式碼內只要有中文字的時候,都會出錯,讓我很沮喪。後來轉用 xeCJK 時,輕輕鬆鬆就處理完,也讓我慢慢愛上用 xeCJK 排中文文件了。

下載原始檔 test_csvsimple.zip

沒有留言:

張貼留言