Inkscapeの既製フィルタは、Inkscapeのインストールディレクトリの下のshare\filters\filters.svgに定義されています。
Inkscapeは起動時にshare\filtersの下に置かれたSVGファイルを読み込み、定義されているフィルタをメニュー登録します。したがって自作したフィルタをメニューから使えるようにしたい場合には、自作フィルタの入ったSVGファイルをここにファイルを置けば良いわけです。
ただし、メニューに追加するためにはフィルタ定義に次のXML属性が必要です。必要な属性がそろっていないフィルタ定義はメニューには登録されません。
属性名 | 内容 |
---|---|
inkscape:label | フィルタ名 |
inkscape:menu | メニューのカテゴリ名 |
inkscape:menu-tooltip | フィルタを選択したときシステムバーに表示する説明文 |
たとえば、ABCにある「つや消しゼリー」の定義は次のようになっています。
このうちinkscape:labelはフィルタエディタで作成するときのフィルタ名ですが、inkscape:menuおよびinkscape:menu-tooltipはXMLエディタから自分で追加してやる必要があります。
実際にフィルタを作成してメニューに登録する方法を、手順を追って説明すると次のようになります。
-
share\filtersの下に追加フィルタを入れるSVGを作成します。ここでは仮にmy-filters.svgというファイルを作成することにします。実際にはファイル名は何でもかまいません。
-
Inkscapeでmy-filters.svgを開きます。
- 「フィルタ(S) → フィルタエディタ」でフィルタエディタを開き、追加するフィルタを定義します。
-
「編集(E) → XMLエディタ(X)」またはShift+Ctrl+XでXMLエディタを開き、作成したフィルタ定義を選択します。フィルタ定義はdefs4の下に置かれています。
次のように、メニュー登録に必要な情報のうちinkscape:labelだけが定義された状態になっています。
-
inkscape:menuとinkscape:menu-tooltipを追加します。属性を追加するには、属性欄の下に属性と設定値を入力して「設定」ボタンをクリックします。
ここでは例として次のように登録してみます。登録する値には、いずれも日本語が使えます。
-
SVGを保存して、Inkscapeを終了します。
-
再度Inkscapeを起動すると、自作したフィルタがメニューから選択できるようになっています。
システムバーにも定義した説明が表示されます。