OpenType Math 字型 - 拉丁增補、擴展 A、B 字元集和 unicode 分數集的用途是什麼?

OpenType Math 字型 - 拉丁增補、擴展 A、B 字元集和 unicode 分數集的用途是什麼?

如題。

我一直在創建一些個人 OpenType 數學字體(透過將現有字體(例如 Minion)與現有數學字體結合);我一路上觀察到的一件奇怪的事情是,似乎幾乎所有 OpenType 數學字體都定義了 Latin-1 Supplement、Latin Extended A 和 Latin Extended B 字元集。例如,請參考 Fira Math 的樣本表(Fira Math 甚至定義了西里爾字母,我也不太明白,原因如下)

然而,據我所知(至少對於 LuaLaTeX 使用而言),unicode-math 不會將任何這些字形對應到數學模式下的字元。數學模式中的重音字元似乎總是透過將原始字元與 U+00300 以後定義的標記相結合來創建(Fira Math 樣本中的「組合變音標記」部分)。

另外,就我個人而言,我總是將字體設定為從常規文件字體中提取常規直立字形(在 mathrm 等中使用) - 我始終相信它可以正確配置以實現良好的排版。

(*如果有人覺得這一點令人困惑,我承認我不完全確定 mathrm 的來源 - 來自 fontspec 的常規字體還是 unicode-math 指定的數學字體?)

換句話說,如果我使用 Latin Modern Math 作為我的數學字體,我會要求 LaTeX 從 Latin Modern 中提取所有直立字形。 (這個用例對於拉丁現代可能沒有多大意義,但對於我自己的自定義字體 - 而且由於我不是專業的印刷師 - 我顯然選擇從原始文件中提取直立字體,因為它們是由專業印刷師創建的而且我不明白為什麼有人會費心將相同的字形複製到數學字體中,而不進行任何更改)。我不明白為什麼需要定義它們,如果它們從未使用過或只是常規非數學字體的重複(為什麼不簡單地獲取原始字體?)

更奇怪的是 unicode 分數字元集(根據其樣本表,Fira Math 也定義了它),我認為它從未在數學模式中使用過,更不用說在數學排版中很常見了。根據我的經驗,TeX 分數似乎始終是首選和使用的。

總結一下,不太明白為什麼這些字元集是在 OpenType Math 字型中定義的,至少對於 LaTeX 使用而言是如此。它們對我來說似乎是多餘的,因為它們要么未使用,要么似乎只是從常規非數學字體複製(沒有調整):

  • Latin-1 補充
  • 拉丁文擴充 A
  • 拉丁文擴展 B
  • unicode 分數(在 Latin-1 補充集和 Ux2150 及以上 - Fira 樣本中的「數字形式」部分)
  • (西里爾)
  • (基本拉丁文的直立字母)

我只能透過一些解釋來了解為什麼要定義它們:

  • 這樣 OpenType Math 字型也可以當作常規文檔字型。這似乎是一個非常奇怪的用例(並且似乎也不起作用 - 因為您需要從常規非數學字體中獲取具有未修改間距的斜體字形才能正確排版斜體)
  • 它們是針對非 LaTeX 用例(如 Microsoft Word)定義的。我不確定 Word 是否使用這些字元集,但這似乎是一個可能的解釋。
  • XeLaTeX 或 mathspec 使用。不知道這是否屬實,但在我看來它們並沒有在 LuaLaTeX + unicode-math 中使用。

我是否正確地認為,在 LuaLaTeX、unicode-math 上下文中,這些字形實際上從未使用過(和/或可以通過要求 LaTeX 從常規非數學字體獲取字形來補充)?

答案1

他們這樣做是因為這很容易。大多數 OpenType 數學字體都是已涵蓋這些範圍的現有字體的擴展,或具有涵蓋這些範圍的匹配文字字體。即使不這樣做,這些區塊中的幾乎每個字形都結合了字體已經需要的重音符號和字母。

基本直立拉丁字母用於\symup(儘管你是正確的,沒有數學字體似乎利用這一點來使用不同的字母表直立數學字母,與\symup,而不是數學模式下的單詞,與\mathrm- 你必須加載第二種字體為此),並且一些數學論文確實使用西里爾字母作為數學符號,因此這些在數學模式下並非完全無用。

相關內容