一直很想推廣Tex,不過我的環境不是自己裝的。最早學cwTex時是我自己設定環境沒錯,不過標點不能用慣常的置中標點、還得在整篇打完以後逐一取代,最終只能讓我很悶的跟著吳老師用LaTex搭配CJK打稿子,我也想要有自己可以把握的環境編文件啊……

對我來說,用Tex的好處有三個,其一是它的排版是浮動的,所以你只要告訴他你大概想要文件長怎樣就好,其他就交給Tex去處理,就像電腦會選花生一樣神奇;其二是它是純文字的,可以搭配TortoisesSVN做版本控制,Word就沒辦法了(我討厭開追蹤修訂功能),純文字也可以隨處編輯,體積小也好攜帶好管理;其三是我覺得最棒的地方──英文可以自動依音節斷字!這樣排出來的文件左右對齊時整齊漂亮,中間也不會有太大的空格,Word就沒辦法做到了(吧?)。



可是現階段對我來說也有幾個缺點。譬如說它不是所見即所得,而我有點被Word慣壞了,以前打PE2的時候自己會在腦海裡想排版,現在不編出來看一下結果我會很抓狂,真是由奢入儉難;此外啊,我得在willie幫我們設定好的環境跑,每次想要什麼新玩具都要找他,有時也不免擔心一天到晚打擾他、他會不會在家裡偷偷做草人插針……(喔,我當然知道我們家吳老師溫柔又善良,只是擔心而已,請吳老師的眾多粉絲們以後Google到這篇不要幫他做草人插針謝謝~)

所以現在,我要自立自強!(背後大海翻騰)



所以今天在網路上看到了XeTex,我就很歡樂的裝了。有人說裝Tex Live 2007最一勞永逸,但是下載半天還不到一半,在中程我就直接裝了XeTex,卻無法編譯成功。

最後裝的是MikTex。搭配VIM打了個測試檔,喔喔編起來了,不過字型果然跟傳說中一樣,英文用了中文字形的結果……不是很美。 XD



【安裝】

比想像中來得要輕鬆寫意……我以前為什麼不肯自己裝呢?在本機編譯好快啊~(心)

1. 下載MikTex
2. 點兩下開始安裝,一直按下一步就可以了。
3. 安裝好以後,從開始→所有程式→MikTex可以找到"Update",進去後也是一直按下一步,把目前安裝的MikTex更新到最新版。
4. 在命令提示字元下執行texhash、updmap,讓MikTex重新抓字型設定。
5. 編譯Tex文件檔,如果成功就是成功了。我是用XeTex編,所以指令是:xetex filename.tex。

不過因為我有經過一陣亂試,所以不知道有沒有漏掉什麼……但願我都有記到。 XD



試著編譯某份UTF-8編碼的文件,因為找不到字型所以一直失敗。後來看到這篇:"Chinese TeX Using the CJK LaTex Package",抓了裡面的測試檔案,測試用LaTex編,test-Big5.tex,沒有問題;test-UTF8.tex,就不行。好像跟我選用的字型有關係?最後用XeTex編都可以成功。回頭編了之前去SCIS的paper,換過字型以後也可以順利編好。

要注意的是即使在XeTex下雖然已支援UTF-8,但是如果選用的字型裡沒有對應的字,一樣是印不出來的。這樣說很模糊,舉個例吧──我用華康粗黑體印了老半天的「快乐」,第二個字出不來,害我不太快樂,以為是不支援UTF-8,搞半天是這字型裡沒有「乐」,改用標楷體就沒事了。





【測試】

以下是我的XeTex練習內容:

\documentclass[12pt,a4paper]{article} %設定版面格式
\usepackage{fontspec} %設定全文使用的字型
\setmainfont{華康粗黑體}
\newfontfamily{\A}{Bookman Old Style}
\newfontfamily{\B}{標楷體}
\XeTeXlinebreaklocale "zh" %表示用中文的斷行
\XeTeXlinebreakskip = 0pt plus 1pt %預留調整的空間

\begin{document}
試用{\A XeTex}練習{\A UTF-8}{\B 的文件输入与输出}
\end{document}



練習的結果如下。



對了,XeTex直接編出來就是PDF檔喔。LaTex編出來要經過pdflatex或其他方式轉檔才會得到PDF。至於XeTex的一些用法可以看《最佳中文LaTex解決方案─XeTex!!》《XeTex快速上手》





如果需要 CJK(中日韓語言套件)的話,開始→所有程式→MikTex,這次請選 Settings。在 Packges 裡選 Language Support → Chinese → CJK,接著系統就會幫你連線安裝了。



(MikTex還滿不錯的,如果編譯到一半缺套件,會跳出視窗提醒你安裝。)





【中文斜體字型問題】

LaTeX下中文字型無法直接使用斜體,我的解決方式是參考蔡炎龍老師的《在Windows下使用Latex》,這份手冊裡面有字型設定方式,不過使用的是吳聰敏老師對齊基線的標點,和一般慣用的排版字型不同,因此除了下載蔡炎龍老師的字型檔,我還另外下載了李果正先生製作的字型檔,取center資料夾中的標點置中字型。

檔名或資料夾名稱結尾為u,表示是UTF-8字型;若無則是Big5字型。我取用UTF-8字型。


1. 先照蔡炎龍老師手冊中的指示,下載他提供的字型檔。解壓縮後得到texmf資料夾,把它放到你高興的地方。

2. 開始→所有程式→MikTex→Settings→Root頁籤,Add剛才你的字型資料夾。(如果放在C:\就是C:\texmf)

3. 這邊是我多做的步驟。我會把李果正先生提供的標點置中字型,逐一取代蔡炎龍老師原來的字型檔(果老的字型檔全放在同一資料夾下,要依照蔡炎龍老師的分類放到對應的資料夾,例如cwku*.tfm要放到C:\texmf\fonts\tfm\CJK\cwku)。

4. 在命令提示字元下輸入:initexmf -u。

5. 等C:\>回來以後,再輸入initexmf --edit-config-file updmap。這時會跳出記事本,在這個被開啟的文檔最後面加上以下文字後存檔離開:
Map cwmu.map
Map cwku.map
Map cwfsu.map
Map cwhbu.map
Map cwyu.map


6. 等C:\>回來後再輸入initexmf --mkmaps。這個要跑一陣子,畫面也不會顯示什麼訊息,請耐心等它跑完。之後就可以使用這些字型了。




以上的字型分別是明體(cwmu)、楷體(cwku)、宋體(cwfsu)、黑體(cwhbu)、圓體(cwyu)。不過好奇怪,我丟簡體字進去跑不出來,會直接跳過那些字,不是UTF-8字型嗎?但是日文又可以印,好怪,大概是我哪裡沒做對吧。 囧興

而且還有一個問題……那些斜體看起來都長得很像粗斜體,不知道研討會用這樣的字型能不能通關成功。 Orz





雖然打TeX滿不方便,不過習慣了就會喜歡TeX排版出來的清爽簡單,打方程式的直覺簡便(我是覺得比方程式編輯器直覺多了,可能我打過的都不複雜 :p)。而且它和CSS一樣,可以將排版歸排版、文稿歸文稿。willie和我之前發表的paper就是只要處理內文就好,排版部分只要引入一個sty檔就搞定,不必像在Word排版時,還要斤斤計較每一節的邊界、逐行複製格式貼上。

和謝老師討論到paper裡的行高問題。Word把方程式視為物件,如果設定單行間距,整個段落忽大忽小醜到不行;設固定行高,又動不動就把中括號嗑成了絕對值,一整個機車。所以說著說著,我忍不住慫恿謝老師一起加入這條不歸路,她好像心動了,哈哈。



有志學TeX的人可以從比較簡短扼要的文件開始看。

在Windows下使用LaTeX
LaTeX的快速入門

我是覺得一開始看吳聰敏老師和李果正先生的文件,很容易會因為文件份量太多、所以就想說「我改天再看吧」然後過了好幾年都不打開來看(我就是這樣啦 XD)。從份量比較少的文件開始學習,比較容易入門;不過這兩份文件到後來真的要開始打報告、寫paper時,還是非得看仔細不可。

《cwTeX排版系統》
《大家來學LaTeX》

書的部分,最近又從圖書館找了一本來看,"LATEX : a document preparation system : user's guide and reference manual",取代先前輕薄好讀的"Learning LaTeX",成為我目前最喜歡的一本。編排由淺至深,講解如何打出語意結構、排版正確的文件,也說明常見錯誤訊息的排解之道,雖然是英文的,但是用字淺白直接,厚度也不會讓人望而生畏。






小草 發表在 痞客邦 PIXNET 留言(4) 人氣()


留言列表 (4)

發表留言
  • glorin
  • 看起來好像挺好玩的 XD
    改天來研究看看

    關於方程式編輯的行高問題方面
    只要在點選格式->段落
    將文件格線被設定時,貼齊格線的選項取消就可以了
    不過我老闆嫌方程式編輯的格式太醜了
    堅持我們使用功能變數 囧
    我還覺得方程式編輯的格式比功能變數設的漂亮多了 = =
  • 編起來的時候會超有成就感的唷,
    每次學會一個新功能都讓我想到以前學做網頁的時候,
    把html一字一字敲進記事本的感覺 ^^a

    謝謝妳教我們解決行高問題哩,
    不過功能變數有比方程式編輯器漂亮嗎,好好奇
    方程式編輯器應該比較強大吧 :p

    小草 於 2008/03/03 21:05 回覆

  • glorin
  • 個人覺得方程式編輯器好看多了XD
    不過使用功能變數的好處是
    不用害怕以後打開檔案要編輯程式時
    跑出一個視窗顯示"程式毀損"
    像我同學做影像處理要編寫一堆程式
    只要聽到他大喊就知道他的程式全部要重新打了 = =
  • 那他應該比妳更適合學 TeX 啦 XD

    也許妳可以試試看用連老在用的 winedit,我是沒裝過,不過聽他說好像可以直接點一點就打出符號來~

    我是喜歡自己key,因為這樣學越久會越熟練,以後要除錯比較方便

    小草 於 2008/03/06 16:49 回覆

  • etchen
  • 學姊...
    好難喔= =
  • 學姐不會難啊~
    妳看學姐對妳多好~(開始鬼扯 XD)

    一開始會覺得難是一定的啦...
    但是妳CSS都會了,
    這個算什麼啊~不過是一塊蛋糕對不對~XD

    妳現在是編不出來嗎?

    小草 於 2008/03/07 16:11 回覆

  • cosine
  • 對於在cwtex裡的標點符號不置中的問題我倒是有一個解決的辦法
    自己定義一個指令
    用 \raisebox 和 \hskip 把標點符號放到想要的位置
    不過直接改字型檔還是治本的方法啦
  • 可是即使文字處理掉了,用 cwtex 我好像還有遇到一些別的問題欸
    我記得是文獻裡,我沒有辦法打出區隔多位作者的「‧」來
    所以後來就用 MiTeX + JabRef 了...

    小草 於 2010/11/11 21:27 回覆