我的问题是,当我用 改变字体大小时,字体似乎也会改变\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
或大小变化)的原始字体选择。