利用 csvtools 宏包在 LaTeX 中實現 mail merge
.csv 文件的內容如下:
1 | Mr,Name,Address,Time,Date |
之前我還嘗試了專門用於郵件合併的 mailmerge 宏包, 但是此包的使用非常麻煩,需要將所有的數據都寫在源文件中,而且每組數據都需要單獨的 \mailentry 命令來定義。相較之下,將數據存在csv文件中當然方便很多,而且還可以兼容 MS Excel。
調用 .csv 文件:\applyCSVfile{<filename>}{<text>}
默認是設表頭的內容爲 field 的名字,如 Mr,Name 等,插入 field 共有三種方法,\insert<text>
,\insertbyname{<text>}
或是 \field{<col>}
,效果是一樣的,如 \insertName
或是 \insertbyname{Name}
。第三種是用於沒有表頭的情況,直接用序號來調用不同的列。
效果: