
我有一份混合了拉丁語和非洲語 (Tifinagh) 文字的文檔。
\documentclass{book}
\usepackage{fontspec}
\setmainfont{Ebrima}
\begin{document}
ⵖⵉⴽⴽⴰⴷ ⵙ ⵎⵔⴰⵡ ⵉⵙⴳⴳⵯⴰⵙⵏ, ⵔⴰⴷ ⵢⵓⵜⵉ ⵍⵍⴱⴰⵙⵜⵉⴽ ⵉⵙⵍⵎⴰⵏ ⵖ ⵢⵉⵍⵍ.
Latin regular
\textbf{Latin bold}
\textit{Latin italics}
\end{document}
事實證明,拉丁字母正確地以粗體呈現,但沒有以斜體呈現。這是為什麼?是否有一種方便的方法可以在單一文件中混合拉丁文和非洲文,同時仍有適用於拉丁文的斜體?
答案1
如果我前往Ebrima 的 Microsoft 版面,我看到“其他變體:Ebrima Bold”,但沒有斜體版本。我相信這是你問題的根源。我的這台電腦上沒有 Ebrima,但我懷疑您會收到與我嘗試使用 Noto Sans Tifinagh 時收到的警告訊息類似的警告訊息:
LaTeX Font Warning: Font shape `EU1/NotoSansTifinagh(0)/m/it' undefined
(Font) using `EU1/NotoSansTifinagh(0)/m/n' instead on input line 1
和:
LaTeX Font Warning: Some font shapes were not available, defaults substituted.
這裡的問題是,為了使用\textit{...}
,您需要有可用的斜體字體,而 Ebrima 似乎沒有。同樣,為了使用,\textbf{...}
您需要有可用的粗體字體。有趣的是,Ebrima 似乎確實具有其中之一,這就是為什麼\textbf{...}
有效且\textit{...}
無效的原因。
很多人沒有特別意識到斜體字體,它不僅僅是斜體書寫。相反,它是一種完全不同的字體,每個字元的版本完全不同,專門設計為看起來像斜體手寫體:
在印刷術中,斜體是一種基於書法手寫形式的草書字體。由於書法的影響,斜體通常會稍微向右傾斜。
因此,許多高品質(和一些不太高)的字體都會帶有專門設計的斜體變體。
其實和粗體是一樣的。您可以輕鬆地偽造粗體,但您不會獲得與從定制的粗體字元選擇中獲得的相同的高品質結果。然而,當我們使用斜體時,這一點尤其明顯,因為許多字體都有斜體變體,這些變體具有完全不同的字元。
然而,許多人都習慣了 Microsoft Word(以及其他所見即所得程式)的魔力我按鈕。它的作用是選擇字體的斜體變體(如果存在),但如果不存在,它只是用一點傾斜來偽造它,本質上是產生斜式,而不是真正的斜體。然而,再次與粗體一樣,最好的結果將從定制的傾斜/傾斜變體中獲得,並且某些字體也帶有其中之一,而不是由某種演算法決定。
因此,總而言之,您正在設定文件以使用 Ebrima
\setmainfont{Ebrima}
然後你試著用 來獲得一些「斜體」\textit{}
。問題是,當您使用 時\textit{}
,XeLaTeX 會嘗試使用斜體變體,但天哪,沒有斜體變體。因此,它取代了下一個最合適的版本,不幸的是,這只是直立版本。那我們能做些什麼呢?好吧,就像 Microsoft Word 一樣,我們也可以偽造它:
\setmainfont[AutoFakeSlant=4.0]{Ebrima}
\textit{}
現在將為您提供傾斜字體,儘管它看起來可能不像字體帶有自己專門設計的傾斜變體那樣好。
然而,從評論來看,您真正想要的並不是在 Ebrima 中設定整個文檔,而只是為 Tifinagh 使用 Tifinagh 字體,因為預設的 Computer Modern 字體不支援 Tifinagh。好吧,這沒問題,但是,您確實需要引入字體切換聲明 - 否則 XeTeX 如何知道您想要使用不同的字體?所以你想做的是:
\documentclass{book}
\usepackage{fontspec}
\newfontfamily{\TI}[AutoFakeSlant=0.3]{Noto Sans Tifinagh}
\begin{document}
Hello world, here is some English. {\TI ⵖⵉⴽⴽⴰⴷ ⵙ ⵎⵔⴰⵡ ⵉⵙⴳⴳⵯⴰⵙⵏ ⵔⴰⴷ
ⵢⵓⵜⵉ ⵍⵍⴱⴰⵙⵜⵉⴽ ⵉⵙⵍⵎⴰⵏ ⵖ ⵢⵉⵍⵍ} \textit{Back to English. But this
time, it's italic.} \textit{{\TI ⵖⵉⴽⴽⴰⴷ ⵙ ⵎⵔⴰⵡ ⵉⵙⴳⴳⵯⴰⵙⵏ ⵔⴰⴷ ⵢⵓⵜⵉ
ⵍⵍⴱⴰⵙⵜⵉⴽ ⵉⵙⵍⵎⴰⵏ ⵖ ⵢⵉⵍⵍ}}
\end{document}
我已經AutoFakeSlant
按照您的要求使用了在 Tifinagh 中為您提供“斜體”的選項,但值得注意的是,草書斜體樣式實際上是適用於某些字母的西方概念。我懷疑 Tifinagh 是否有類似於真正的拉丁斜體的草書形式,但我確信 Tifinagh 使用斜體,就像在英語和許多其他語言中一樣,這確實是您所得到的AutoFakeSlant
,但它是一個確實相當迂腐的腳註。