MikTex 下 CJK 對於一些中文字會有問題

2006/09/25
~ 阿亮 ~

最近在學 Latex,發現在 MikTex (Windows 版)下,有一些 Big5 中文字會造成下述的訊息:

error| Improper alphabetic constant.
error| Missing = inserted for \ifnum.


這是由於一些字,比如”年”、”破”等,在第二個 byte 是 ‘~’,而這個字元在於 latex 用來當作 \nobreakspace,就會類似的問題產生,下述的 perl script 可以幫助將有包含特殊 ‘\’, ‘~’, ‘}’ 的中文,取代成 \CjKchar{xxx}{yyy} 字元。

while (<>) {
      s/([\xA1-\xFE])([\x40-\x7E]|[\xA1-\xFE])/
      if ($2 eq "\\" || $2 eq "{" || $2 eq "}" || $2 eq "~") {
           sprintf("\\CJKchar{%d}{%d}", ord($1), ord($2));
      } else {
          sprintf("$1$2");
      }
      /eg;
      print;
}

比如

折號

將會被取成

\CJKchar{175}{125}折號

參考自這裡 。



2 Responses to “MikTex 下 CJK 對於一些中文字會有問題”

  • 阿亮  說:

    [註]
    結果,只要到 latex.exe 的目錄下,將 bg5+latex.exe 改名成 latex.exe 來用,就能達到同樣的目的 :p 應該是 bg5+latex.exe 做掉這段了,我也省麻煩 :)

  • 阿亮  說:

    [註]
    若是第兩個 Byte 是 ‘{‘ 或 ‘}’ 可能會出現
    Paragraph ended before \CJK@XX was complete
    的訊息。

站內搜尋



本站其他服務

本站其他軟體



  • 下一班公車(nextBus)

    這個 app 只要開啟後,就根據定位幫你過濾出附近站牌的時刻表,以及提供相關公車預計到站的時間,方便您在很快時間內確定要坐的哪一班公車


  • 台灣匯率快算

    提供全球 150 種以上貨幣即時換算,以及各種匯率歷史變化圖。


  • 股海快訊 (iNews123)

    提供特定個股新聞更新推播、股價警示推播、新聞社群分享以及每日個股收盤價等功能的股票App/股市App.


  • 姓名筆畫吉凶查詢系統

    這是一個提供中文字康熙筆畫的小軟體,並根據農民曆計算每個名字或公司名的總筆畫以及最後的吉凶數,共有四種模式


  • 台灣空污警報(AirInfo)

    設定特定站點為推播通知關注點後,當該站點空氣品質變糟時,即時推播通知給您。另外提供站點附近基本天氣預測資料。


  • 下一班高鐵 (nextTHSR)

    這個 app 只要開啟後,就根據定位幫你過濾出最近高鐵站的時刻表,不用再按任何按鈕了,方便您在很快時間內確定要坐的哪一班高鐵