組版システムの開発時に、組版結果をスナップショットテストでチェックする簡単な仕組みを入れてみたため、その過程を紹介します。 背景 最近、JavaScript 上で作動する組版システム[1](図 1)を開発しています。組版とは、文字や図版をページ上に配置して紙面を構成する作業を指し、代表的な組版システムとして LaTeX, SATySFi, Typst 等が挙げられます。 組版システムの中でも特に文字組みは要件が複雑であり、機能を追加する度に、意図しない箇所の組版結果に影響を与えてしまうことが往々にしてあります。例えば、和欧混植(日本語と英語を混ぜた組版)を実現した際に日本語の処理が正しく動作しなくなった、といったケースは枚挙に暇がありません。(イラレやインデザのバージョンを上げたら出力が変わった!といった例は判りやすいと思います) したがって、これらのソフトウェアを作る際には、文字組みを制