CWEB、Plain TeX:如何從 cmr8 切換到另一種支援外字字元的字體?

CWEB、Plain TeX:如何從 cmr8 切換到另一種支援外字字元的字體?

我在用著埃格格的程式碼在 Plain TeX 中使用 UTF-8,這樣我就可以使用 Donald Knuth 和 Silvio Levy 的 CWEB。然而,並非所有 TeX 字體都支援外語字符,例如\"{y}çã

所以這段程式碼...

\input cwebmac
\input utfplainmac
\input plain-t1

\N{1}{1} Introdução. Lorem ipsum dolor...

……產生這個結果:

在此輸入影像描述

日誌檔案顯示了問題:

Missing character: There is no ç in font cmr8!
Missing character: There is no ã in font cmr8!

我怎麼能切換cmr8到另一種包含這些字元的字體?

答案1

您必須為 定義合適的字體\eightrm,也要設定一些大寫轉換;這裡我只定義了範例所必需的那些。

不幸的是,其中還有一個拼字錯誤utfplainmac.tex,而\c{A}不是正確的\c{C}。在文件中修復它。

\input cwebmac
\input utfplainmac
\input plain-t1

\font\eightrm=ecrm0800

\uccode"A7="87 % ç is <C3><A7>, Ç is <C3><87>
\uccode"A3="83 % ã is <C3><A3>, Ã is <C3><83>

\N{1}{1} Introdução. Lorem ipsum dolor...

\bye

在此輸入影像描述

答案2

還有一種替代方法pdfcsplain

\input cwebmac
\input utf8lat1
\input lmfonts

\N{1}{1} Introdução. Lorem ipsum dolor...

\end

答案3

添加到地獄邊緣:

\font\eightrm=<your font>

相關內容