新機能を取り込んでいっそうの高みに達したInkscape 0.46

 各種のツール、エフェクト、フィルタの新規追加および、インタフェースと動作速度面での改善が果たされたオープンソース系ベクタグラフィックスエディタの Inkscape が、バージョン0.46として新たにリリースされた。

 3大オペレーティングシステム用のインストールパッケージは、それぞれのバイナリ版がInkscapeのプロジェクトサイトからダウンロードできる。このうちLinux用ビルドについてはautopackageおよびZeroInstallフォーマットにて提供されているが、非公式ながら同サイトにはFedoraパッケージへのリンクも張られており、Ubuntuユーザの場合はInkscapeチームのDEBリポジトリとAPTを介したインストールをすることも可能で、そのための手順もInkscapeのホームページにて解説されている。その他のディストリビューションについても専用パッケージが順次公開されていくことになるだろう。

 今回のバージョン0.46では2種類の新規ツールを始めとして、各種の機能追加が行われている。

 新規ツールの1つは3Dボックスツールである。これはスパイラルおよびポリゴンツールと同様の単一機能に絞られたツールで、2次元平面上に3次元ボックスを精密描画する際に使用する。ここで扱うボックスは任意の3次元サイズにて描画することができ、仮想的に設定された消失点に対する位置関係はInkscapeが自動的に処理してくれる。

 もう1つの新規ツールは調整(tweak)ツールであり、これはモードを切り替えることで実質的に8種類のツールとして機能するようになっている。このツールを用いた既存のオブジェクトやパスに対するカーソル操作では、プッシュ、プル、ストレッチ、ディストーションという処理を施すことができ、その際に用いる操作自体はラスタグラフィックス系エディタにおけるペインティングツールの操作法と似ていなくもない。

inkscape_thumb.jpg
Inkscape 0.46で追加された3Dボックス、ステッチパス効果、調整の各ツール

 調整ツールの使用時には、プッシュ、グロー、シュリンク、アトラクト、リペル、ラフン、カラーペイント、カラージッタというモードを切り替えることができる。このうちプッシュ(push)はその名が示すとおりに、カーソル操作でオブジェクトやパスを伸ばしたり変形させるためのものである。グロー(grow)とシュリンク(shrink)は特定のオブジェクトを対象とした拡大/縮小をさせるもので、グローはオブジェクトの外側に向けて拡大させ、シュリンクは内側に向けて縮小させる際に使用する。アトラクト(attract)とリペル(repel)もこれらと同様の処理をするモードだが、その使用時にはターゲットとしたオブジェクトではなくカーソルに対する相対位置にて変形される。ラフン(roughen)とはターゲットのオブジェクトをランダムに複雑化させるもので、境界部のパスを散らした効果を与えることができる。

 これらの各モードを実際にどのような目的で使用すればいいのかを把握するには多少の実地訓練が必要となるであろうが、描画オブジェクトへの効果はその場で確認できるので、習熟にはそれ程手間はかからないはずだ。残された2つのモードは前述した6種類のモードとは異なり、オブジェクトのパスや形状ではなく塗りつぶしや輪郭線の着色を操作する際に使用する。つまりカラーペイント(color paint)はターゲットのオブジェクト色を調整ツールで選択しておいたカラーに合わせて変更させるモードであり、カラージッタ(color jitter)はランダムに変更させるモードである。

 既存ツール群の中でも特に目立った変更が加えられたのは、カリグラフィ(calligraphy)ペンのエングレービング(engraving)モードである。これは木彫り的な効果をシミュレートするためのものであるが、これにより例えば複雑なクロスハッチングをする際に線を1本1本描画する際の負担を大幅に軽減することができる。

 その他に触れておくべき新機能としては、選択した複数のポイントをつなぐ円ないし楕円を描画させる機能(つまり中心点以外を指定した描画ができる)や、鉛筆およびペンツールに装備された単一ドットのみを描画するという機能がある。このドットはカーソル操作不要で描画可能となっているので、従来存在した“ユーザが手作業で実行可能な最小幅が描画可能な最短のラインセグメント”という束縛から解放されることを意味している。

インタフェース関連の改善

 今回のリリースではユーザインタフェース関連の改善もいくつか施されている。従来バージョンではフローティング形式であったツールバー、ダイアログ、パレットが、現バージョンからはメインのドキュメントウィンドウとドッキング可能となった。またカラーパレットの操作性も向上されており、カラースウォッチからオブジェクトへのカラー適用は、ドラッグ&ドロップおよび右クリックを用いたコンテクストメニュー経由での指定が可能となっている。またInkscapeではオブジェクトのカラー調整機能として“カラージェスチャ”と呼ばれる操作法が新たに採用されており、これはクリックしたカラースウォッチをホールドしつつマウス移動をすることでカラーの色調や彩度ないしカラー値を変更できるというものである。

 バージョン0.46ではグリッドおよびガイドラインに関して様々な操作が行えるよう改善されており、特にこの変更については各種ツールの使用時に利用する機会が多いだろう。例えばグリッドおよびガイドはドキュメントのプロパティダイアログでの扱いも異なるものとされたが、これはグリッドがオブジェクト群を吸着ないし整列させるための移動可能な独立した補助線であり、ガイドがワークスペース全域をカバーした座標を示す仮想的な方眼用紙として機能するという、両者の違いを明確化したことの反映でもある。

 以前のリリースでは縦と横方向のガイドラインだけしか使用できなかったが、現行バージョンからは任意の角度でガイドを表示させることが可能となった他、オブジェクトやパスを基にしたガイド表示もできるようになった。また同時に従来の2D描画用のマス形グリッドに加えて3D描画用の“軸測投影”(axonometric)グリッドも装備されている。その他にも1つのドキュメント上で複数のグリッドをアクティブにして、それぞれの表示設定を個別に変更することもできる。

ライブパスエフェクト

 新規ツール以外の注目点としては、ライブパスエフェクト(LPE:Live Path Effect)というシステムが挙げられる。LPEは2007年度のGoogle Summer of CodeプロジェクトにおけるInkscapeに関する開発成果の1つであり、それがついに安定ビルドに到達した訳だが、この機能の重要性については改めてここで語る必要はないかもしれない。

 簡単に言うとLPEとは、パスに加える変更に連動させた特殊なエフェクトを施す機能である。この機能を利用するには、まず操作対象となるオリジナルの参照パスをベースとして、パターンや接続線の追加などを施すことで目的とする図形を作成する。その後ベースとなった参照パスに変形などの操作を加えると、その変更は図形全体に自動で反映されるのである。

 バージョン0.46では、Pattern Along Path、Bend Path、Stitch Sub-Paths、Gearsという4つのエフェクトが事前定義されている。その他にも独自のLPEをユーザ設定することも可能だが、詳細は同プロジェクトのwikiに用意されているチュートリアルを参照して頂きたい。

エフェクトとフィルタの追加

 バージョン0.46では前述したLPE機能以外にも、Effectsメニューに収められている“従来型”エフェクトに対する改善も行われている。新たに追加されたのは、2Dバーコード、スピログラフ、渦(whirl)、グリッド、ギアの生成エフェクトであり、その他にもテキストやカラーに関する新規の変更機能および関数プロッタの改善が施されている。またドキュメント上の選択オブジェクト群に対してImageMagickの各種エフェクトを、Inkscapeのコマンドとして直接実行させることも可能となった。

 昨年行われたバージョン0.45のリリースでは、Inkscapeにおける最初のSVGフィルタとしてGaussian Blurの追加が行われている。そして今回のリリースでは、Blend、ColorMatrix、Composite、ConvoleMatrix、DiffuseLighting、SpecularLighting、DisplacementMap、Flood、Image、Merge、Morphology、Offset、Turbulenceという13ものSVGフィルタが新規にサポートされたのである。このうちBlendとColorMatrixは、オブジェクトおよびパスに直接作用をする。残りのMergeやOffsetなどは、基本的にその他のフィルタと組み合わせて使用することでその威力を発揮するため、独立したフィルタとしての色合いは弱い。

 今回のフィルタ群の大量追加は、本格的なSVGフィルタエフェクトセットの実装にInkscapeをより一歩近づけたと評していいだろう。SVGフィルタは従来ラスタグラフィックスでのみ可能であると目されていたエフェクトをベクタイメージにおいて可能とするテクノロジであるため、この機能の充実はInkscapeの開発が1つの節目を迎えたことを意味する。

内部的な変更

 新バージョンでの変更は、一見しただけでは分かりにくい表面下でも各種施されている。例えばそれは、調整前と調整後のドキュメントの同時使用を可能にするウィンドウ別調整をサポートしたカラー管理機能であり、あるいはカラー調整したドキュメントを異なるモニタ間で移動しても常に正しい表示が再現されるようにしたマルチモニタ対応のXICCのサポートである。またSVGドキュメント保存時には、他のアプリケーション上でも正しい表示を保持するためのカラー定義の補正および管理情報をInkscapeから出力させることが可能となっている。

 機能的な改善はドキュメントのインポートとエクスポート関連についても施されている。例えば現行のInkscapeでは、Adobe Illustratorバージョン9.0以降(同バージョンにてIllustratorのファイルフォーマットが変更)のドキュメントおよびPDFを直接インポートすることができる。またIllustrator系のSVGを始め、CorelDraw、Windows Metafile(WMF)、XAMLのインポート対応度も向上されている。

 ビットマップのエクスポートについては、1つのSVGファイルにある各オブジェクトをそれぞれ個別のラスタファイルとして保存するオプションも新規に装備された(この機能はアイコンデザイン時などに重宝するであろう)。

 昨年のSubversionに続いて、InkscapeではグラフィックスレンダリングライブラリをCairoに変更する作業を進めつつある。今回Cairoベースに改められたのはアウトラインモードであり、これによって従来リリースに比べてメモリ使用量の半減と25%の高速化が達成されたとされている。こうしたCairo化の動きは残りのコードベースに対しても進められていくはずで、その成果には大いに期待させられるところである。その他にも、画面の再描画、ドラッグによるオブジェクト移動、キャンバスのパンやスクロールといった頻繁に使用するタスクにおいても体感可能なレベルでの高速化が果たされている。

その他の変更箇所

 本稿で触れたInkscape 0.46における各種の新機能は、そのリリースノートにて解説されているごく一部を抜粋しただけに過ぎない。リリースノートで取り上げられていたその他の変更箇所については、実際にテストしてみるだけの時間が取れなかった、具体的な検証法が思いつかなかった、あるいは紙面の制限といった諸般の理由により残念ながら割愛せざるを得なかった。

 私が今回実施したバージョン0.46のテストでは、同プロジェクトのUbuntu Gutsy用開発リポジトリに置かれていたものを使用した。そしてこれはプロジェクト側の用意した解説書にも注意されていることだが、その動作には若干の不安定さが残されており、私自身も2度ほどクラッシュを経験したが、いずれのケースにおいてもInkscapeのファイル自動リカバリが機能して中断された状態から作業を再開できている。とは言うものの実務の現場にて新バージョンを使用するつもりであれば、各自のディストリビューションのパッケージ管理システムを介してオフィシャルビルドが用意されていないか、あるいはInkscapeのダウンロードページにて個々のシステムに最適化されたパッケージが公開されていないかをチェックするべきだろう。

 新規ツールの追加、フィルタおよびエフェクトの強化、インタフェースの改良、ライブパスエフェクト(LPE)といった多数の有用な機能改善を1つのリリースにて達成したInkscape開発陣に対して、ここで改めて称賛の言葉を贈りたい。

Linux.com 原文