UTF8 在表格中无法(完全)工作

UTF8 在表格中无法(完全)工作

为什么 UTF8 在表格中无法像在普通文本中那样工作?我尝试在表格中写一个小写的 sigma。在普通文本中,我只需输入 σ,它就会正确显示。但在表格中输入 σ,它什么也不显示,只能输入一个空格。因此,我必须使用 \sigma。我正在使用 LuaLaTeX 进行编译,因此 UTF8 支持应该不是问题。此外,例如,± 无需任何技巧即可工作。那么,为什么所有 UTF8 符号在表格中的工作方式都不像在文本中那样呢?

编辑:最小工作样本

\documentclass{article}
\usepackage{fontspec}
\setmainfont{arial}[
    Extension = .ttf,
    UprightFont = *,
    BoldFont = *bd,
    ItalicFont = *i,
    BoldItalicFont = *bi]

\begin{document}
\renewcommand{\familydefault}{\sfdefault}
σ
\begin{table}
    \begin{tabular}{c|c}
        σ & \sigma \\
    \end{tabular}
\end{table}

\end{document}

答案1

如果要切换\familydefault,则应在之前进行\begin{document},或者在之后明确使用\normalfont才能实际使用它,否则当前加载的字体仍然是之前的默认字体。

还将\setmainfont字体设置为默认衬线字体(因为这是默认设置下的主要字体)。

如果你想使用它Arial作为你的无衬线字体,并使用该无衬线字体作为默认字体,你可以加载

\documentclass{article}
\usepackage{fontspec}
\setsansfont{arial}[
    Extension = .ttf,
    UprightFont = *,
    BoldFont = *bd,
    ItalicFont = *i,
    BoldItalicFont = *bi]

\renewcommand{\familydefault}{\sfdefault}
\begin{document}
σ
\begin{table}
    \begin{tabular}{c|c}
        σ & \sigma \\
    \end{tabular}
\end{table}

\end{document}

答案2

tabular这与环境重置为文档默认的拉丁现代无衬线字体无关table,该字体没有希腊语

\documentclass{article}
\usepackage{fontspec}
\setmainfont{arial}[
    Extension = .ttf,
    UprightFont = *,
    BoldFont = *bd,
    ItalicFont = *i,
    BoldItalicFont = *bi]
\showoutput
\begin{document}
\renewcommand{\familydefault}{\sfdefault}
\begin{table}
\end{table}

\end{document}

相关内容