KaTeXのスタイルとフォント
はじめに
この記事では、KaTeXの文字のフォントやスタイル、大きさ、色、書体について解説します。
スタイル
数式が使われる場所によって自動的にスタイルが決まりますが、以下の関数で手動で設定できます。
関数 | スタイル | 結果 |
---|---|---|
\displaystyle |
ディスプレイ($$ ... $$ ) |
|
\textstyle |
テキスト($ ... $ ) |
|
\scriptstyle |
添字 | |
\scriptscriptstyle |
二重添字 |
スタイルは手動でも設定できます。
\displaystyle\sum_{k = 1}^{n} \frac{k}{n} \\
\textstyle\sum_{k = 1}^{n} \frac{k}{n} \\
\scriptstyle\sum_{k = 1}^{n} \frac{k}{n} \\
\scriptscriptstyle\sum_{k = 1}^{n} \frac{k}{n}
添字
_
は下付きの添字、^
は上付きの添字を表示します。
x_a \quad x^b \quad x_a^b \\
x_{11} \quad x^{22} \quad x_{11}^{22}
x_a_b
はエラーになります。添字の付き方を{}
で明示してください。
{x_a}_b \quad x_{a_b}
テキストモードと数式モード
数式モードではアルファベットが斜体になり、スペースが無視されます。
テキストモードで表示する関数には以下のものがあります。
関数 | フォント | 結果 |
---|---|---|
\text \textrm \textnormal
|
ローマン体(Roman) | |
\textsf |
サンセリフ体(sans serif) | |
\texttt |
タイプライタ体(typewriter type) | |
\textbf |
太字(boldface) | |
\textmd |
通常(デフォルト)(medium) | |
\textit |
イタリック体(italic) | |
\textup |
立体(デフォルト)(upright) |
\textXX
形式のフォント関数を複数使って、フォントファミリー、ウェイト、シェイプを重ね掛けできます。例えば \textsf{\textbf{H}}
は
これらの関数の引数の中で$ ... $
を使うと、数式モードに戻せます。
数式モードで表示する関数には以下のものがあります。
関数 | フォント | 結果 |
---|---|---|
\mathrm |
ローマン体(Roman) | |
\mathsf |
サンセリフ体(sans serif) | |
\mathtt |
タイプライタ体(typewriter type) | |
\boldsymbol \bm
|
黒板太字イタリック体 | |
\mathbb \Bbb
|
黒板太字(blackboard bold) | |
\mathfrak \frak
|
フラクトゥール(Fraktur) | |
\mathcal |
カリグラフィー(calligraphy) | |
\mathscr |
スクリプト体(script) | |
\mathbf \bold
|
太字(boldface) | |
\mathit |
イタリック体(italic) | |
\mathnormal |
イタリック体(数字のみ特殊) |
数式モードの関数は重ね掛けできず、\mathsf{\mathbf{H}}
は
\rm
、\sf
、\bf
、\tt
、\it
、\cal
も利用できますが非推奨です。
KaTeX フォントがボールドグリフを持たないとき、\pmb
で代用できることがあります。
例えば、\pmb{\mu}
をレンダーすると
\mathbf{\mu} \pmb{\mu}
括弧類のサイズ
以下の記号は大きさを調整できます。
左右括弧
記号 | 表記 |
---|---|
( ) \lparen \rparen
|
|
[ ] \lbrack \rbrack
|
|
\{ \} \lbrace \rbrace
|
|
⟨ ⟩ \langle \rangle \lang \rang
|
|
< > \lt \gt
|
|
| | \lvert \rvert
|
|
\| \| \lVert \rVert
|
|
⌈ ⌉ \lceil \rceil
|
|
⌊ ⌋ \lfloor \rfloor
|
|
⎰ ⎱ \lmoustache \rmoustache
|
|
⟮ ⟯ \lgroup \rgroup
|
その他
記号 | 表記 |
---|---|
| \vert
|
|
\| \Vert
|
|
\uparrow |
|
\downarrow |
|
\updownarrow |
|
\Uparrow |
|
\Downarrow |
|
\Updownarrow |
|
/ |
|
\backslash |
\big
、\Big
、\bigg
、\Bigg
は括弧の大きさを指定します。
\Bigg( \bigg( \Big( \big( ( ) \big) \Big) \bigg) \Bigg)
bigr
、bigl
、bigm
系は記号の周りの空白を開き括弧、閉じ括弧、関係演算子に相当する幅にします。
\sin \big( x \big) \\
\sin \bigl( x \bigr) \\
\bigg\{ x \bigg| x < \frac{1}{2} \bigg\} \\
\bigg\{ x \biggm| x < \frac{1}{2} \bigg\}
括弧類の大きさ | 開き括弧 | 閉じ括弧 | 括弧内の関係演算子 | 例 |
---|---|---|---|---|
\big |
\bigl |
\bigr |
\bigm |
|
\Big |
\Bigl |
\Bigr |
\Bigm |
|
\bigg |
\biggl |
\biggr |
\biggm |
|
\Bigg |
\Biggl |
\Biggr |
\Biggm |
\left
、\right
は括弧の大きさを自動で調整します。
左右で異なる記号も使えます。
\left(-1, \frac{3}{2}\right) \quad \left[-1, \frac{3}{2}\right)
対応する記号がない場合は\left.
や\right.
を使います。
\left. x = \frac{1}{2} \right) \quad \left( x = \frac{1}{2} \right.
括弧の間の記号も同じ大きさにしたい場合は\middle
を使います。
\left(\frac{1}{2} \middle/ \frac{1}{5}\right)
サイズ
別のサイズが指定されるかブロックが終わるまで、文字のサイズを変更する関数です。
ab {\LARGE CD} ef
関数 | 例 | 関数 | 例 |
---|---|---|---|
\Huge |
\normalsize |
||
\huge |
\small |
||
\LARGE |
\footnotesize |
||
\Large |
\scriptsize |
||
\large |
\tiny |
色
\color{色}
は文字の色を変更します。
色は、予約された色名または十六進数で指定するRGB引数です。RGBは3桁または6桁で指定し、先頭に#
を付けるかどうかは任意です。
\color{blue} abcd
{\color{red} efgh}
ijkl
\color{#228B22} mnop
\textcolor{色}{式}
は引数として指定された式のみ色を変更します。
\colorbox{背景色}{テキスト}
はテキストの背景の色を設定します。
\fcolorbox{枠色}{背景色}{テキスト}
はテキストの背景だけでなく、背景の枠の色も設定します。
\colorbox
や\fcolorbox
でテキストを$...$
で囲んだ部分は数式モードで表示します。
\textcolor{red}{F=ma} \\
\textcolor{#228B22}{F=ma} \\
\colorbox{aqua}{F=ma} \\
\fcolorbox{red}{aqua}{F=ma}
\colorbox{aqua}{$F=ma$} \\
\fcolorbox{red}{aqua}{$F=ma$}
(Zennでは正しく表示できません。)
char
\char
は、さまざまな形式で表記した文字コードの文字を表示します。
\char123 \\ % 十進数
\char'123 \\ % 八進数
\char"123 \\ % 十六進数
\char`x \\ % 表記可能な文字
\char`~ \\ % 表記可能な文字
\char`\% \\ % 表記不能な文字(%など)
verb
\verb
や\verb*
は、二つの同じ記号で囲まれたテキストをそのまま表示します。
\verb*
は空白記号も表示します。
\verb!a \sin b! \\
\verb*!a \sin b!
CSSで指定するフォント
KaTeXのフォントサイズはデフォルトで周りの文章の1.21倍になりますが、この値はCSSで設定できます。
例えば、1.1倍にするには、
.katex { font-size: 1.1em; }
CSSのクラスのルールを設定して、以下の言語のフォールバック用のフォントを指定できます。
クラス | 文字種 |
---|---|
.latin_fallback | ラテン文字 |
.cyrillic_fallback | キリル文字 |
.brahmic_fallback | ブラーフミー系文字 |
.georgian_fallback | グルジア文字 |
.cjk_fallback | CJK文字(中国語・日本語・朝鮮語) |
.hangul_fallback | ハングル |
.cjk_fallback {
font-family: "Yu Mincho", "YuMincho", serif;
}
詳細な字間情報を持たないグリフは現在のKaTeXフォントにおける文字Mと同じ高さであると見なされるため、行間の配置が少し崩れる可能性があります。
関連記事
ご清読ありがとうございました。
Discussion