電気工学博士の雑記

電気工学の博士が徒然なるままに試した技術的なことをアウトプットする。

Typst 備忘録 -フォント一覧と日本語対応フォント-

はじめに

最近 Latex の代替として Typst が流行っているので、ブラウザ上のオンラインエディタ(https://typst.app)を触ってみたが、日本語対応のフォントがわからなかったので、オンラインエディタで使用可能なフォントの一覧表を作ってみた。 Typst については下記のサイトが詳しい。

フォント一覧

typst.app はフォント設定一覧を下記の JSON から読み込んでいるようなので、これをダウンロードしてプロジェクトにアップロードして、 Typst を用いて一覧表示してみた。

【追記: 2023/12/22】 下記の修正をすると、すべてのフォントで日本語が使えました。 誤)"#text(font:json_enty.name, [- #json_enty.name -> #fonttext])" 正)"#text(font:json_enty.name, [- #json_enty.name -> #fonttext], lang: "JP")"

https://typst.app/assets/font-derived/font-previews.json

typest.app で使用できるフォント一覧表(2023.12.22)を下記に示す。 日本語非対応フォントはデフォルトのフォントが使用されて出力されているようだ。 また日本語が出力されているフォントでも「、」や「。」の位置がおかしいものがある。 Serif 系は日本語に対応しているようだ。

Typst.app フォント一覧

一覧結果を出力するのに使用した Typst のコードは下記の通り。

#set page(
  paper: "a3",
  header: align(right)[
    Useage Font in typst.app
  ],
  columns: 2, 
  flipped: true, 
  margin: (
    top: 20mm,
    bottom: 15mm,
    x: 10mm
  )
)
#set par(justify: true)
#set text(
  font: "Liberation Serif",
  size: 10pt,
  lang: "JP"
)

== フォント一覧
#let fonttext = "Boys be ambitious. 吾輩は、ネコである。"
#for json_enty in json("font-previews.json").at("entries") {
  text(font:json_enty.name, [- #json_enty.name #sym.arrow #fonttext], lang: "JP")
}

おわりに

思ったよりも日本語対応フォントは多かった。