かなりマイナーなネタですが、他に情報を見つけられなかったので書いておきます。
背景
・技術書典16向けに書いている「Babylon.js レシピ集Vol.4」でfootnoteに書いたURLがはみ出してしまう
対応
・articles/sty/jsbook.cls、およびtechbooster-doujin-base.styを編集してfootnoteのフォントサイズを小さくする
この記事では具体的な方法を解説します。
1. footnoteとは
本や論文のページ下に追加される注釈です。以下のようなURLが該当します。
この例では問題ないのですが、URLの文字列が長いとページをはみ出してしまいます。
これでは見栄えが悪いですね。
2. footnoteのサイズを小さくする方法
こちらのリポジトリをベースに作った場合で説明します。Re:VIEW記法での書き方、pdfビルド方法などは既知とします。
まず、articles/sty/jsbook.clsを編集します。footnotesizeという構文が対象になるので、if, fiの中にあるフォントサイズに相当する箇所を変更します。
詳細がわかっていませんが、@viiipt{11}%は8-11ptのサイズにするという意味のようです。
そこで、これを@vpt{6}%に変更し、5-6ptに変更します。
これで、footnoteのフォントサイズが小さくなるので、長いURLでもはみ出ることなく表示されます。
しかし、このままだとソースコードも合わせて小さくなります。
原因は、articles/sty/techbooster-doujin-base.styの中で、ソースコードを表示するためのemlist構文のフォントサイズ指定にfootnotesizeを使っているためです。そのため、元々8-11ptだったフォントサイズが5-6ptになっています。
これを解消するため、jsbook.clsのsmallという変数を8-11ptと変更し、emlist構文がsmallを読むようにしました。
(Tex構文に慣れてないので既存のsmall変数を使いましたが、新しく変数を定義するのが正しいと思います)
まず、smallは元々9-13ptだったので変更します。変更対象はarticles/sty/jsbook.clsの中です。
次に、emlist構文がsmallを使うようにします。変更対象はarticles/sty/techbooster-doujin-base.styの中です。
ここまで実施すると、emlist構文の表記も元々のサイズになります。
3. おわりに
長いURLがはみ出して困ることがあったのですが、ひとまず解決してよかったです。