もう一人のY君

主にiPhoneのショートカットアプリのレシピやTipsなどを書いています. たまに数学の記事も書きます.

もう一人のY君 MENU  MENU

【iPhoneショートカット】数式の画像を作成する【LaTeX】

f:id:thetheorier:20210306144358p:plain

 LaTeXとAPIを使って数式の画像を作ります.

 

 

ショートカット

ショートカット

  • Apple
  • 仕事効率化
  • 無料

※価格は記事執筆時のものです. 現在の価格はApp Storeから確認ください.

 レビュー時のiOSバージョン : iOS14.4

 

 

スポンサーリンク

 

 

 

Google Chart API

developers.google.com

 使用するのはGoogle Chart APIというもの.

 ただこれ, 既に「非推奨」とされているみたいなのでいつ使えなくなるかわりません.

 とは言ってもそうなってから9年くらい経つみたいですが.

 

 このAPI自体は別に数式だけじゃなく, 名前の通り様々なグラフをパラメータとすることで結果を画像にしてくれます.

 テキスト形式のパラメータもあり, そこでLaTeX構文の数式を書ける…というわけです.

 

 

htmlで記述

 まずはweb形式で表示してみます.

 

 

f:id:thetheorier:20210306150336p:plain

 後でやりやすいよう, 予め「テキスト」アクションを置いてそこに数式だけ書くスタイルにします.

 そもそもAPIで投げる際にURLエンコードが必要のためどのみち画像のように記述した数式構文を「URLエンコード」でエンコードすることになるので.

 

 

f:id:thetheorier:20210306150643p:plain

 続けてhtml本文です.

 今回はAPIで拾ってくるのでMathJaxのような読み方でなく, 

 

http://chart.apis.google.com/chart?

 

という形のURLを呼ぶだけです.

 実際にはこの後ろにパラメータをくっつけるわけで, 例えば画像にある順だと1つ目の"cht"はテーマで, txはテキストの意味です.

 "chs"はサイズ, 正しくは縦の長さ(ピクセル?)のようです.

 "chl"は本文です, 今回はこの後ろにLaTex(をエンコードしたもの)が入ります.

 

 

f:id:thetheorier:20210306152607p:plain

 あとはこれを「HTMLからリッチテキストを作成」でリッチテキストにし, 「クイックルック」でプレビューします.

 

 

f:id:thetheorier:20210306152743p:plain

 構文に誤りがなければ画像のようになります.

 

 

f:id:thetheorier:20210306152853p:plain

 先程の通り, パラメータchsは縦幅のようなので, 例えば画像のように改行して2行3行と書いていくと…

 

 

f:id:thetheorier:20210306153007p:plain

 どんどん小さくなってしまいます.

 

 

f:id:thetheorier:20210306153058p:plain

 なのでchsの値は適切に選ぶ必要があります.

 

 

f:id:thetheorier:20210306153414p:plain

 頑張れば多少複雑な数式も…

 

 

f:id:thetheorier:20210306153602p:plain

 このようにそれなりに書くことができます.

 ただ通常とまったく同じにできるわけではないようで, 条件は不明ですが\displaystyleコマンドを入れると結果が表示されない場合があったり, また\textコマンドも使えないようです.

 \displaystyleなどがないと見た目がちょっと残念になったりするのでちゃんと使えると嬉しいんですが仕方ないですね.

 

 

APIとして取り込む

 上でやってることもAPIによるものですが, htmlを介したやり方という意味では変則的でした.

 なので今度は画像を直接取得します.

 

 

f:id:thetheorier:20210306154034p:plain

 先程と同じように数式をURLエンコードしたものを, 同じカスタムURLにくっつけます.

 

 

f:id:thetheorier:20210306154214p:plain

 このURLを「URLの内容を取得」で拾うだけです.

 

 

 

f:id:thetheorier:20210306154315p:plain

 実行して得た(画像)ファイルがこちら.

 

 

blog.thetheorier.com

 先日紹介したMathLMは人が書くにはめんどくさいのでそれに比べたらとても簡単です.

 

 本当はショートカットでMathJaxが使えるといいな…と思ってるんですがどうもうまく行きません.