我想查看拉丁现代数学中的所有字符。运行xelatex
以下命令会出现错误“运行 mktexmf Latin...我找不到文件‘Latin’”。
\documentclass{article}
\usepackage{fontspec}
\usepackage{unicode-math}
\usepackage{fonttable}
\begin{document}
\fonttable{Latin Modern Math}
\end{document}
使用lm-math
而不是Latin Modern Math
会产生相同类型的错误。
如何做呢?
答案1
使用 XeLaTeX 编译:
\documentclass{article}
\usepackage[
a4paper,
left=1.5cm,
right=1.5cm,
top=2cm,
bottom=2cm,
heightrounded,
]{geometry}
\usepackage{fontspec}
\usepackage{multicol}
\ExplSyntaxOn
\NewDocumentCommand{\Ufonttable}{mO{}}
{
\begin{multicols}{8}[\section*{#1}]
\setlength{\parindent}{0pt}
\newfontface\test{#1}[#2]
\test
\int_step_inline:nnn { \xetex_firstfontchar:D \font } { \xetex_lastfontchar:D \font }
{
\iffontchar\font##1\scan_stop:
\makebox[32pt][l]{ \scriptsize \ttfamily U+\ufonttable_number:n { ##1 } }
\symbol{##1}\par
\fi
}
\end{multicols}
}
\cs_new:Nn \ufonttable_number:n
{
\prg_replicate:nn { \int_max:nn { 0 } { 4 - \tl_count:e { \int_to_Hex:n { #1 } } } } { 0 }
\int_to_Hex:n { #1 }
}
\cs_generate_variant:Nn \tl_count:n { e }
\ExplSyntaxOff
\begin{document}
\Ufonttable{Latin Modern Roman}
\end{document}
答案2
将字体名称括在双引号中:
\documentclass{article}
\usepackage{fontspec}
\usepackage{unicode-math}
\usepackage{fonttable}
\begin{document}
\fonttable{"Latin Modern Math"}
\end{document}