我希望將 Latex 數學符號作為向量字體(例如 TrueType)提供,以及從 Latex 符號名稱到字體中代碼點的映射。我怎樣才能實現這個目標?
背景
為了我的研究,我需要存取所有 Latex(數學)符號的高品質圖像。我已經建立了一個工具鏈來為我提供這些圖像; pdflatex 的符號轉 PDF -> GhostScript 的 PDF 轉 PNG -> NConvert 的 PNG 轉裁切 PNG。我在我的軟體中使用這些圖像。
然而,這有點倒退,因為 Latex 中的許多符號被定義為向量形狀。如果我可以直接存取這些向量形狀,我可以減少記憶體佔用,並以任意解析度繪製符號。
答案1
TeX 中常用的所有字體均已以可縮放 type1 truetype 或 opentype 形式提供。
例如,您可以使用 opentype 字體,例如 xits-math 或 latin-modern math,它將在單一可縮放字體中包含所有常見的 Latex 和 ams 符號。
unicode-math 套件具有適用於任何 opentype 數學字型的命令名稱映射,請參閱
texmf-dist/tex/latex/unicode-math/unicode-math-table.tex
這是一個長長的列表,看起來像
...
\UnicodeMathSymbol{"02197}{\nearrow }{\mathrel}{ne pointing arrow}%
\UnicodeMathSymbol{"02198}{\searrow }{\mathrel}{se pointing arrow}%
\UnicodeMathSymbol{"02199}{\swarrow }{\mathrel}{sw pointing arrow}%
...
它映射 Unicode 代碼點、tex 命令名稱、數學類別和 Unicode 名稱。