スライド ドキュメントクラス内の不一致なシンボル

スライド ドキュメントクラス内の不一致なシンボル

問題の説明

slides私は、ドキュメント クラスが数式のほとんどをタイプセットし、それを切り取って WYSIWYG スライド エディターで使用する方法が気に入っています。

まず、フォントを 10pt に設定する方法がわかりません。新しい数式が、ドキュメント クラスで生成したものと似たものになるからです(数式は、インポート時にスライド ソフトウェアで 360% に拡大されます。そのため、デフォルトで 20pt サイズが使用されるため、180% にarticle拡大します)。slides

2 番目に、ドキュメント クラスにいくつかの癖があるようです。つまり、縦のドット、セミコロン、コロンがおかしく見えます。横のドットとカンマは問題ありません。 ここに画像の説明を入力してください 比較のために、articleドキュメントクラスを使用すると次のようになります。 ここに画像の説明を入力してください

最後に、どのフォントが何に使用されているのか、完全には理解できていません。具体的には、直立フォントはサンセリフ体、一部の記号もサンセリフ体 (括弧、角括弧など)、イタリック体のラテン文字とギリシャ文字はセリフ体のように見えます。

誰かこのドキュメント クラスについて説明してくれませんか?
このクラスが主流ではなくなった場合は、代替案も検討します。

追加情報

PS 矛盾を修正するには、クラスのメンテナーにバグレポートを提出する必要がありますか?

上記の例を生成するために使用されたコードは次のとおりです。

\documentclass{slides}
\begin{document}
\[
\ldots\;\cdots\;\vdots\;,\;;\;:\;\sin(2x)
\]
\end{document}

ghostscript次に、レンダリングされた PDF から数式を切り取るために使用されます。

ライブデバッグ

slidesクラスのフォントの回答が与えられましたここによるエグレこの場合、私は を使うことに興味がありませんbeamer理解するどうしたの。

ドキュメンテーションセクション 9.1 では、フォントは次のように設定されていると述べられています。

\def\rmdefault{lcmss}
\def\sfdefault{lcmss}
\def\ttdefault{lcmtt}
\def\itdefault{sl}
\def\sldefault{sl}
\def\bfdefault{bx}
\def\updefault{n}

これらのコマンドを で実行するとarticleメイン テキストのフォントは変更されますが、数学はslidesクラスを使用した場合のようには動作しません。

ああ、わかりました。セクション 9.5 から次のことがわかります。

\SetSymbolFont{operators}{normal}{OT1}{lcmss}{m}{n}
\SetSymbolFont{letters}{normal}{OML}{lcmm}{m}{it}
\SetSymbolFont{symbols}{normal}{OMS}{lcmsy}{m}{n}
\SetSymbolFont{largesymbols}{normal}{OMX}{lcmex}{m}{n}

これにより、数式がサンセリフ体でレンダリングされ、句読点が不統一になりますが、少なくとも 3 つの縦のドットが押しつぶされることはありません。

ここに画像の説明を入力してください

\ldots両方に円ではなく 3 つの小さな四角形が一貫して表示されると良いと思いますが\dots、それは今となっては要求しすぎかもしれません。

さらに、コンマはどうなっているのでしょうか? 他の句読点のように四角く見えないのはなぜでしょうか?

最後に、上記の tex をコンパイルすると、pdftex不足しているフォントと実行された置換に関する複数の警告が生成されます。

初期の結論

  1. 3 つの縦のドットは によって小さな四角形に変換され\def\rmdefault{lcmss}、メイン テキストのフォントが変更されます (ただし、3 つの縦のドットがなければ、数式は変更されません)。これはバグのように思えます。
  2. セミコロン、コロン、サイン、括弧、数字は、単一のコマンドでサンセリフ フォントでレンダリングされます\SetSymbolFont{operators}{normal}{OT1}{lcmss}{m}{n}。カンマが影響を受けないのはなぜかわかりません。

早期の自己回答

次のテンプレートを使用すると、slides見た目で 10 ポイントの数学が得られます。

\documentclass{article}
\SetSymbolFont{operators}{normal}{OT1}{lcmss}{m}{n}
\begin{document}
\[

\]
\end{document}

答え1

デフォルトでは\vdots\ddotsフォントからの文字ではなく、配置された文字から構築されます)、\hbox{.}これは、あなたが指摘したように、四角いドットを使用する cm sans serif を使用すると非常に顕著になります。特に、スライドのデフォルト設定であるコンピューター モダン ローマン イタリック 数学と組み合わせると顕著になります。

これは、\vdots(丸い)数式を使用するように再定義し.、太字の拡張されていない cm ローマン フォントをロードして、(少なくとも)を取得します。数式フォントに一致させるには、中程度の太さのローマンは;スライドのサンセリフの隣では細すぎるように見えます。選択したb太さはおそらく少し重いですが、おそらく機能します。

ここに画像の説明を入力してください

\vdotsラウンドを使用するように再定義すると、.必要に応じて位置を微調整することもできます(ただし、ここではそうしませんでした)。

\RequirePackage{fix-cm}% cope with non standard sizes
\documentclass{slides}
\makeatletter
\DeclareSymbolFont{rmops}   {OT1}{cmr} {b}{n}% get back a roman font, for ; at least
\DeclareRobustCommand
  \vdots{\vbox{\baselineskip4\p@ \lineskiplimit\z@
      \kern6\p@\hbox{$.$}\hbox{$.$}\hbox{$.$}}} % no $ by default
  \DeclareMathSymbol{:}{\mathrel}{rmops}{"3A}% was operators
  \DeclareMathSymbol{;}{\mathpunct}{rmops}{"3B}% was operators
\makeatother
\begin{document}
\[
\ldots\;\cdots\;\vdots\;,\;;\;:\;\sin(2x)
\]
\[
\ldots\;\cdots\;\vdots\;,\;;\;:\;\sin(2\mathsf{x})
\]
\end{document}

関連情報