Inkscape(0.92.4)でレンダリングしたLaTeXの数式にグラデーション処理を加える。

By | 2019年8月5日

はじめに

前の記事のアイキャッチ画像に「グラデーション加工した数式」を使おうと思い、Inkscape(0.92.4)で適当に以下のような画像を作ってみました。

通常の$LaTeX$の組版の結果と比較すると、ストロークの幅が太くなっていて、かつ縁の部分にはグラデーションが効いていないように見えます。

数式に縁取りのようなものがついてしまったのは想定外の事態でしたが、Twitterに流すためのアイキャッチ画像であればアートっぽい感じになった方がいいだろうと思ったので、そのまま採用に至った次第です。

そこで、この記事では縁取り付きの数式を作成する方法について説明し、次にもともと想定していた「縁取りなしのグラデーション処理」にするための方法について書きます。

スポンサーリンク

最初に試した手順

まず、前節で示した画像を作ります。

最小の作業量でグラデーションまで到達してみる。

以下の手順で作ります。$LaTeX$で組版を行った数式をInkscapeでレンダリングし、その結果生成されたオブジェクトにグラデーション処理を加えるという大まかな作業の流れになります。

Inkscapeでレンダリング。

LaTeXで組版を行った数式をInkscapeでレンダリングするまでの手順は、以下の通りになります。

  1. Inkscapeを起動します。
  2. メニューバーから「エクステンション」→「レンダリング」→「LaTeX」(下図の赤矢印)と選択します。なお、「LaTeX」のメニューが表示されていない場合には$LaTeX$をバックエンドとして起動させるための設定を行う必要があります。設定の方法についてはこちらをご参照ください。
  3. 下図のポップアップ画面(「LaTeX」ポップアップ)が表示されますので、「LaTeX入力」の入力フィールド(下図の赤矢印(a))に数式を入力します。下図では、「追加パッケージ(カンマ区切り)」のフィールドに入力が行われていますが、これは必須ではありません。
  4. 「適用」ボタン(上図の赤矢印(b))をクリックします。
  5. LaTeXがバックグラウンドで起動して数式が組版され、その結果がInkscapeに読み込まれてレンダリングされます。
  6. 「閉じる」ボタンをクリックします。画面に表示されている数式が小さい場合には適宜拡大表示します。

グラデーション処理を加える。

数式がInkscapeでレンダリングできたら、以下の手順でグラデーション処理を加えることができます。

なお、一般にレンダリングされた数式は複数のオブジェクトは(文字(または記号))で構成されていますので、いきなりグラデーション処理が加えようとすると、オブジェクトごとにレンダリング処理が加えられてしまいます。

そこで、ちょっとした工夫が必要になります。

  1. Inkscapeのページ上の数式が表示されている部分を囲むようにマウスをドラッグし、数式を構成しているオブジェクトをすべて選択します(下図)。

    なお、ドラッグ終了後にマウスの左ボタンを離すと、複数のオブジェクトが選択済みであることを示す表示(下図)に切り替わります。
  2. メニューバーから、「パス」→「結合」を選択しオブジェクトを結合します。
  3. すると、数式が以下のように表示されます(フィルの設定の状況により表示の状況が変わる場合があります)。
  4. 文字の幅が(見かけ上)ちょっと太くなったような感じがしますが、ここではそれは気にせずにグラデーション処理を行います。数式全体がマウスのドラッグにより選択されていることを確認(選択されていなければ再度マウスをドラッグさせて選択します。)し、ツールバーの「グラデーション」ボタン(下図の赤矢印)をクリックします。

  5. スポンサーリンク

  6. グラデーションの始点と終点を設定するモードに切り替わりますので、マウスでドラッグすることにより始点と終点を設定します(下図参照)。マウスの左ボタンを離したところが終点となります。

ここまでの手順でグラデーションのパターンはデフォルトのものになりますが、グラデーション処理を加えることができます。(`・ω・´)

ちょっとカスタマイズ。

以下の手順でグラデーション処理のための色を変えてみます。

  1. グラデーションの始点と終点のうちのどちらか一方をクリックし、選択状態とします。下図は終点を選択した例(赤矢印)です。
  2. 「フィル/ストローク」ダイアログ(下図はダイアログドックに格納されている状態です。)の「フィル」タブをクリックし、「単一色」(下図の赤矢印)が選択されていることを確認します。
  3. 終点(または始点)の色を指定します(下図の赤矢印)。Aは「透明度(=0が完全な透明)」ですが、デフォルト値が0(すなわち、透明な状態になります。)ですので、RGBを変えてもキャンバスの表示が変わらないなと感じた場合には、Aを取りあえず255に設定することをお勧めします。ここは、理解しているつもりでもハマりがちなところです。
  4. 手順3とは反対側の点をクリックします。すると、「フィル」タブ内の表示が反対側の点の設定に切り替わりますので、色を指定します。

    相鉄(相模鉄道)の11000系や相鉄バスの路線バスでこの記事を最初に書いた時点(2019年8月)で用いられている帯色っぽい色(青とオレンジ)のグラデーションとしてみました。🚃

縁取りのようなものの正体。

前節までの手順で、なんとかグラデーション処理を行うことができました。


スポンサーリンク

しかし、グラデーションの色の組み合わせ自体に意味があって、さらに縁取りのようなものがグラデーションの色の意味付けとは関係のないものである場合にはできれば削除したいと考えるのは人情でしょう。

この縁取りのようなものは、実はストロークだったりします。

パスの結合を実行すると、なぜかストロークの幅が勝手に設定されてしまうようです…

グラデーション処理を行うときにすでに「パスの結合」の処理をやっているのだから、いまさら気づくのって矛盾してね? とも思いたくなるところですが、それでもここでストロークの設定が再度必要になるというのは少々意外感があります(※個人の感想です)。

縁取りのようなものの調整

ちょっとした意外感はあるかもしれませんが、ストロークの幅を調整することによって縁取りのようなものを調整することができそうです。

なくす。

ストロークをなくすには、以下の手順でストロークの幅を0に設定します。

  1. 「フィル/ストローク」ダイアログの「ストロークのスタイル」タブ(下図の赤矢印)をクリックします。
  2. 「フィル/ストローク」ダイアログの表示が切り替わりますので、「幅」の入力フィールド(下図の赤矢印)に”0″と入力し、Enterキーを押します。
  3. ストロークが表示されなくなります。なお、オブジェクトの選択を解除した状態での画面全体の表示の状況は以下の通りです。

変更する。

パスの幅を変更するには、前節のなくす場合と同様の手順でパスの幅を設定します。

  1. 「フィル/ストローク」ダイアログの「ストロークのスタイル」タブ(下図の赤矢印)をクリックします。
  2. 「フィル/ストローク」ダイアログの表示が切り替わりますので、「幅」の入力フィールド(下図の赤矢印)にデフォルト値よりも大きい値を入力し、Enterキーを押します。
  3. 幅を0.6mmとした場合には以下のように表示されます。ストロークの部分がかなり塗りつぶされてしまうことがわかります。
スポンサーリンク

まとめ

$LaTeX$の数式自体の表現の完成度が高いだけに、それに余計なものを付け足されてしまうと最初はびっくりしてしまうことと、数式の色を白に近い色に設定していたときに、パスによる縁取りをつけられてしまうと、記号によっては意味が変わってしまう可能性があります(例: ${\mathrm R} \to {\mathbb R}$。${\mathbb R}$は実数全体の集合と定義されることが一般的です)。

そんなときにはこの記事を参考にしていただいて、善きに取り計らっていただけるとよろしいかと思います。🐼

この記事は以上です。