为什么当我改变尺寸时字体也会改变?

为什么当我改变尺寸时字体也会改变?

我的问题是,当我用 改变字体大小时,字体似乎也会改变\fontsize

我正在尝试调整字体大小acm。我使用的代码来自这个帖子打印出字体信息。

在此处输入图片描述

当我在更改任何内容之前打印出字体信息时,我得到了第一行。然后我调用

\fontsize{13 pt}{1 em} \selectfont

然后我得到了第二行。最后我尝试用

\fontsize{13 pt}{1 em}\sffamily \selectfont`

我得到了第三行,它看起来是正确的,但似乎是放大了的,而不是真正的字体大小,并且明显与其他两行不同。

编辑:在创建 MWE 时,我发现acm cls 文件

例如:

\documentclass{acm_proc_article-sp}

\begin{document}

\title{problem with my unit}

\numberofauthors{1}

\makeatletter
\newcommand{\showfont}{encoding: \f@encoding{},
  family: \f@family{},
    series: \f@series{},
      shape: \f@shape{},
        size: \f@size{}
}

\author{
\alignauthor
        \showfont\\
        {\fontsize{13 pt}{1 em} \selectfont \showfont }\\
        {\fontsize{13 pt}{1 em}\sffamily \selectfont \showfont }\\
}

\maketitle
\end{document}

答案1

你给出的链接已经失效了,但是我找到了一个版本的课程

注意\fontsize{13 pt}{1 em}不是错误,但在选择字体之前,长度在此时被吸收,因此基线间距将设置为 1em当前的此设置前的字体(通常不够大)

您的文档与找到的类文件现在产生

在此处输入图片描述

如果我修改文档以 tx 字体开头,就像您的输出一样,通过添加

\renewcommand\rmdefault{txr}
\renewcommand\sfdefault{txss}

我得到了序言

在此处输入图片描述

这或多或少与你所展示的内容相符。

问题可能在于为什么 9pt 和 13pt 大小差不多,而第一个是无衬线字体。原因可以在\selectfont第一个 前添加 来查看\showfont。这会使实际使用的字体与 LaTeX 宏(例如记录最后请求的字体大小的宏)同步\f@size

\author{
  \alignauthor
        \showfont - \selectfont\showfont\\
        {\fontsize{13 pt}{1 em} \selectfont \showfont }\\
        {\fontsize{13 pt}{1 em}\sffamily \selectfont \showfont }\\
}

生产

在此处输入图片描述

您可以看到强制\selectfont第一行使用真正的 9pt 罗马字体,该字体明显小于下一行的 13pt。

尽管\selectfont像您显示的那样设置了宏,但\showfont实际字体是设置标题后剩下的 13pt 无衬线字体。

字体选择不符合乳胶惯例的原因在于它们在类中的声明方式不当。例如,作者使用 \aufnt“作者字体”进行设置,但这尚未根据 LaTeX 系列/尺寸轴进行定义,它被定义为

\newfont{\aufnt}{phvr at 12pt}

它是原始字体周围的非常薄的包装\font,并定义\aufnt为忽略所有乳胶相对字体变化(例如\bfseries或大小变化)的原始字体选择。

相关内容