Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
Help us understand the problem. What is going on with this article?

LaTeX 文章で手書き文字を書く ~tegakiパッケージ~

これは「TeX & LaTeX Advent Caleandar 2020」の22日目の記事です。21日目は mattskalaさん ,23日は目はmunepiさんです。

TeX&LaTeX アドベントカレンダーが埋まらない」という状況に,少しでも力になればと拙いながら記事を書かせていただきました1(全日程 埋まっているので :upside_down: )

数式でも手書きフォントが使いたい!

手書きフォントには一定の需要があります2。世の中にはいくつかの手書きフォントが存在します。欧文も和文も検索すればたくさん出てきます。和文も用いることができる有名なフォントはたぬき油性マジックみかんちゃんフォントでしょう。
このようなニーズに応えるべくみかんちゃんフォントを LaTeX に対応させた PXmika パッケージなどがあります。しかし,数式に対応した手書き和文フォントはあるだろうか3
この疑問を解決すべく, ceo.sty でおなじみの安田亨先生と一緒に制作したのが tegaki.sty です!

tegaki.sty ができること

まだまだ開発段階ですが Hocsom で公開しています。公開しているものは欧文書体と数式記号のみです。使うには\usepackage{tegaki}としてパッケージを読み込むだけです。

  • 欧文も和文も使える(和文は製作中)
  • 数式対応
  • 多段根号,多段括弧,合成括弧にも対応
  • いろんな記号がついてくる

欧文も和文も使える

欧文はOT1エンコーディングで作成しています。またセリフとサンセリフがあります。デフォルトではセリフです。サンセリフへの切り替えはオプションにsansを加えるだけです4
リガチャ,カーニング,太字に対応しています。サンセリフのほうが手書きっぽい?
ただしギリシャ文字は変わりません。
eng-serifORsans.png

和文は小学生で習う漢字までは完全に対応しています。(うらを返せばまだまだ)
jp-ex.png

数式対応

手書きフォントで数式に対応しています。\vec{}\sum等の記号コマンドにもしっかり対応しています。
math-example.png

多段根号,多段括弧,合成括弧にも対応

多段根号は普通に\sqrt{}で使うことが出来ます。
多段括弧を用いるには,パーレンは\p{},ブレースは\B{},ブラケットは\G{}で使うことができる。合成括弧には\lbrac,\lbra,\lparen等を\left\rightで囲むことで使うことができる。

多段括弧・合成括弧と大きなラジカル
\[
    \G{\B{\p{2+\dfrac{\sqrt{2+\dfrac{2}{2+\dfrac{2}{x}}}}{2+\dfrac{2}{2+\dfrac{2}{2+\dfrac{2}{x}}}}}}}
\]
\[
    \left\lbrac\left\lbra\left\lparen
    2+\dfrac{\sqrt{2+\dfrac{2}{2+\dfrac{2}{2+\dfrac{2}{2+\dfrac{2}{2+\dfrac{2}{x}}}}}}}{2+\dfrac{2}{2+\dfrac{2}{2+\dfrac{2}{2+\dfrac{2}{2+\dfrac{2}{x}}}}}}
    \right\rparen\right\rbra\right\rbrac
\]

radicalANDparens.png

いろんな記号がついてくる

実は,tegaki.sty は ceo.sty のコードをベースとして作成されている。そのため各機能(例えば\vabs{}\bd{})を ceo.sty から引き継いでいる。
さらに記号も引き継いでいる.≒の\yakuや▭の\chouhoukeiなどの使用頻度の高いものから,集合論に使える\marubatuのようなニッチなものまで使える。

まだ,未完成 (´・ω・`)

しかし,まだまだ開発段階です。現状で以下の課題が挙げられます。


☃ が出せない!!!!

⛄️ や 🍣, 🦆 などの絵文字に対応していない。絵文字云々より雪だるまが出せないのは大問題!!!

漢字対応がイマイチ

現状では中学生で習う漢字半ばである。高校生で習う範囲程度は対応予定である。

欧文が OT1 エンコーディング

トレンドは T1 エンコーディングである(と勝手に思っている)。使用用途が限定されないように対応したほうが良いだろう。

「①...」 や 「( 1 )」 などのコマンドに対応していない

丸囲み数字等の制作が出来ていない。式番号が振れないのは致命的。

TFM の調整が完璧でない

カーニングのおかしなところがいくつかある。

サンセリフの調整が完璧でない

サンセリフの字形がおかしい。現状セリフを完成させてから対応予定。

OpenType の埋め込み

フォントの埋め込みを special 命令に頼っている。kanji-config-updmap から使えるようにしたい。

制作で見えてきたこと

とにかく情報が少ない!
正確には日本語の情報が少ないと感じた。例えば,数式用の TFM の fontdimen の情報は,ほとんど TeX Book から情報を得た。ASCIIの記事にはいくつかの情報が乗っているが完璧ではない。おそらく情報が乗っているであろう本の多くは(TeX Book も含めて)絶版しており情報源が乏しい
TeX に関する正しい知識を誰か残してください!(他力本願)
自身を持って言えるようになったら,私も記事に残していきたいです。

終わりに

TeX・LaTeX はむつかしい:sob: だから面白い:upside_down:(沼)


  1. 実は Qiita 初投稿 

  2. 私が生きている限りは需要があります。 

  3. 私が知らないだけかもしれません。 

  4. フォントの初期案はサンセリフだったが,印刷してみるとのっぺりしており見ずらい(と言われた)ためセリフを作成した。手書きじゃない? 

MusicDump0710
(´・ω・`)
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away