
問題は、 でサイズを変更するとフォントが変わってしまうことです\fontsize
。
テンプレートの著者ブロック内のフォントサイズを調整しようとしていますacm
。次のコードを使用しています。この郵便受けフォント情報を印刷します。
フォント情報を変更する前に印刷すると、最初の行が表示されます。次に、
\fontsize{13 pt}{1 em} \selectfont
そして2行目が出てきます。最後にファミリーを変更してみました
\fontsize{13 pt}{1 em}\sffamily \selectfont`
3 行目は、見た目は正しいのですが、実際のフォント サイズではなく拡大されているようで、明らかに他の 2 行とはファミリーが異なります。
編集: 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
ここで、最初の行では、次の行の 13pt よりも明らかに小さい実際の 9pt ローマン フォントが強制的に使用されていることがわかります。
\selectfont
マクロが表示されているように設定されているにもかかわらず、実際\showfont
のフォントはタイトルの設定から残った 13 ポイントのサンセリフです。
フォントの選択がLaTeXの慣例に従っていない理由は、クラス内での宣言方法が不適切だからです。たとえば、著者は \aufnt
「著者フォント」を使用して設定されますが、これはLaTeXのファミリ/サイズ軸では定義されておらず、次のように定義されています。
\newfont{\aufnt}{phvr at 12pt}
これはプリミティブの非常に薄いラッパーであり\font
、サイズの変更\aufnt
などのすべての LaTeX 相対フォント変更を無視するプリミティブ フォント選択として定義します\bfseries
。