TeXの記憶(56) — 長い数式をページ幅に収めたい(その2)

前回は数式全体を\vboxの中に入れてから\scaleboxを使って縮小してしまいましたが、\vboxを使わずに数式の行の中で式を
いくつかの方法で詰めてみたいと思います。

0927

(1) \mathrelを使う

演算子の両側には特別なアキが入っているので、単なる文字扱いにしてしまいます。「+」「-」などをそれぞれ\mathalpha{+}のようにしていけば、多少詰まります。見た目も損ねないと思いますが、数が多いとちょっと面倒です。

\[
\left\{1 \mathalpha{-} \frac{x^2}{2!} \mathalpha{+} \frac{x^4}{4!} \mathalpha{-} \cdots  
\mathalpha{+} \frac{(-1)^m x^{2m}}{(2m)!} \mathalpha{+} \cdots \right\}
...
\]

(2) コマンド「!」を使う

∫∫の間を詰めるのによく使われています。適当にブレースのところに使ってみると、さらに詰まりましたが、見た目が窮屈そうになってしまいました。

\[
\left\{\! 1 \mathalpha{-} \frac{x^2}{2!} \mathalpha{+} \frac{x^4}{4!} \mathalpha{-} \cdots
\mathalpha{+} \frac{(-1)^m x^{2m}}{(2m)!} \mathalpha{+} \cdots \! \right\}
\mathrel{+} i \left\{\!
...
\!\right\}
\]

(3) \thickmuskip, \medmuskip, \thinmuskipの値を変更する

TeXブックによればこれらの値は、数式用グルーパラメータで数式で使用されるとあります。
「TeX by Topic」という本と合わせると、これらの値は

  • \thickmuski:2項演算子の前後に入るスペース
  • \medmusukip:2項演算子の前後に入るスペース
  • \thinmuski:句読点の後と内部オブジェクトの周りに入るスペース

な感じの意味になるようです(違いがわかりにくですが)。

\theを付けて出力するとデフォルトの値は次のようになっていました。

\thickmuskip % 5.0mu plus 5.0mu
\medmuskip % 4.0 mu plus 2.0mu minus 4.0mu
\thinmuskip % 3.0mu

これをゼロにして組んでみたのが最後の例です。

\[
\thickmuskip=0mu
\medmuskip=0mu
\thinmuskip=0mu
\left\{ 1 - \frac{x^2}{2!} + \frac{x^4}{4!}
...
\]

けっこう詰まりました。全体が詰まるので自然が感じがしますが、編集者によっては\cdotsを一つの「文字」と考える人もいるので、ここだけ不満が残るかもしれません。

最後の方法は数式の中で使われている文字や記号の組み合わせによって詰まり度が大きかったり小さかったりします。

この3つの値をゼロにすると、TeXが持っている適切なスペースの割当てが壊れてしまうので、多用しないほうが良いのかもしれません。

 

TeXの記憶(55) --- 長い数式をページ幅に収めたい
LaTeXで長い数式をページ幅に収めるために\vboxを使った例です。 途中に演算子があればそこで改行するのですが、以下のような例だとちょっと困ってしまいます。 行列の真ん中で改行するのは見た目が悪いし、行数も多くなって...

コメント