優れたベクターグラフィックス描画ツールsK1

 その名前からはピンと来ないかもしれないが、 sK1 は優れたベクターグラフィックス描画プログラムである。同じカテゴリのより有名なツールとしては、Inkscape、Dia、OpenOffice.org Drawなどがあるが、sK1にはCorelDrawのCDRファイルを読み込み、Linuxで使用可能なフォーマットに変換するという、他のLinuxアプリケーションにはない機能が存在する。

 sK1という名称は、10年ほど前に登場したフリーのベクターグラフィックスエディタSketchに由来する。Sketchはその後、Skencilと改名されたが、2005年6月のバージョン0.6.17以降、GTK+へのポーティングに着手したところで、開発に行き詰まったようだ(最終的には停止した)。2003年ごろ、ウクライナのプログラマらがSkencilのソースコードに手を加え、そこから派生したのがsK1である。その目的は、CMYKカラーモデル、PostScriptPDF形式といった、プロ向けプリンタの要件を完全にサポートすることであった。

 sK1の最新版はバージョン0.9.0であり、その改訂版が頻繁にリリースされている。パッケージは、さまざまなディストリビューションのサイトで、ソースコードで提供されている。同プログラムはGNU LGPL(Lesser General Public License、劣等一般公衆利用許諾書)の下、リリースされている。

CMYKとは?
 モニター画面では、RGB体系によって色を再現する。つまり、各ピクセルは、赤、緑、青の光を投影することにより再現される。一方、印刷プレス機では、ハーフトーニングまたはスクリーニングと呼ばれるプロセスにおいて4色のインク(シアン、マゼンタ、イエロー、ブラック)を用いて、色を再現する。実際には色の異なる小さなドットが、単一の色として人間の目に見えるように互いに近接して印刷される。ハーフトーニングを行わなければ、プリンタで再現できる色の種類はかなり限定されてしまう。

 プロの印刷作業向けに正確な色を再現しなければならないならば、これら2つの色モデルを理解し、プリンタに対して適切なコマンドを生成することのできる描画プログラムを使用する必要がある。Scribusなど、CMYKをサポートするプログラムもあるが、GIMPなどはCMYKをサポートしていない。

インストール

sK1は、Tcl/Tkパッケージを用いてPythonで記述されている。sK1をインストールする前にまず、以下のパッケージがインストールされているかどうかを確認する。

  • tcl 8.5
  • tk 8.5
  • python-imaging
  • python-liblcms
  • zenity

 次に、自分が使用するディストリビューション向けのパッケージをダウンロードし、インストールする。ただしそのコードは、最新版ではないかもしれない。最新版を試用したい場合は(ただし最新版は安定していないかもしれないことに注意すること)、Subversionクライアントを用いて、sK1プロジェクトのダウンロードページに指定されたリポジトリに接続し、ダウンロードする。パッケージをビルドするには、「python setup.py build」に続いて、「python setup.py install」を実行する。最も簡単な方法は、まず旧版のパッケージをインストールしてから、Subversionのソースコードをビルドすることである。そうすれば、sK1のビルドに必要なものがすべて確実に揃っていることになるからだ。

sK1の使用

sk1_1_thumb.png
sK1

 他のベクターグラフィックスプログラム翻訳記事)を使用した経験があるならば、すぐにsK1に慣れることができるだろう。sK1のメニュー、アイコン、ツールバー、コマンドは、他のツールと変わらないからである。

 sk1と入力して同プログラムを起動する。最初は、空の画面が表示される。まず[Layout] → [Page]によって、描画サイズを選択する。次に、F4キーを押すか、該当するツールバーアイコンをクリックするか、[View] → [Fit to Window]を選択して、描画領域を画面サイズに合わせる。色管理体系を選択するには、画面用の場合も印刷用の場合も、右上の小さな傘のアイコンをクリックする。

 左側の縦方向のツールバーによって、オブジェクトを追加することができる。オブジェクトの配置(前面または背面への移動、重ね合わせ)は、左下に並んだ小さなアイコンによって行う。オブジェクトを選択すると、上から2つめのツールバーが変化し、その選択対象に合ったオプションを表示する。

 リサイズ、回転、移動などの変換操作は容易である。左側の上の方にある[Select]アイコンを選択して、変換したいオブジェクトをクリックする。オブジェクトを右クリックすると、塗りつぶしや輪郭線など、多くの属性を設定することができる。

 連続線を描画したりベジェ曲線を設定したりして、セグメントごとに曲がり具合を変えることもできる。しかし思い通りの曲線を描画するには、練習が必要だ。[Select]アイコンのすぐ下の[Edit Mode]アイコンをクリックすると、オブジェクトを変形したり、角度を変えたりといった操作が可能である。

 私はこの種のプログラムのエキスパートではないため、今回は助っ人を依頼した。グラフィックスデザイナーとして長年の経験を有する人物である。彼は、同プログラムが一般的な機能をすべて有し、また、おそらくCorelDrawなどの類似のプログラムを使い慣れている人ならば、少し使用すれば簡単に操作できるだろうという点について、同意してくれた。しかし彼は、時々クラッシュする点と、一部の機能が欠落していたり不完全であったりする点がよくないと指摘した。これは、不安定な改訂版を使用する場合には、よくある現象である。

 sK1が最大の特徴として掲げている、CorelDrawのインポート機能をテストするため、CDR(CorelDraw)ファイルをいくつかインポートしてみた。私のテストでは問題なく動作したが、CDRには標準というものが存在しないし、CDRファイル形式も将来変更されるかもしれないため、いつもうまく機能するかどうかは定かではない。

 困ったことがあれば、sK1フォーラムをのぞいてみるとよい。

まとめ

 sK1は、インタプリタ言語であるPythonで記述されているせいか、時々遅く感じることがあるものの、優れたプログラムである。提供されているドキュメントは十分ではないが、チュートリアルと高レベル向けのマニュアルが役に立つだろう。私の使用中にも、時々これといった理由もなくクラッシュすることがあったが、最新版にすることで解決された場合もあった。とはいえsK1はまだ開発中であり、開発者らは先月、「開発チームの人数が足りないため、プロジェクトの進行は非常に遅いが、われわれは楽観的にとらえている」と述べている。

 全体としては、CorelDrawのファイルに対応し、印刷対応の出力を生成するという2つの機能を含むsK1の利点が、その欠点を上回っている。しかし私は、安定版がリリースされるのを待つことをお勧めする。読者が我慢強く、予期せぬ問題に遭遇することに慣れているというなら話は別だが。

Federico Kerekiはウルグアイ在住のシステムエンジニア。20年以上にわたり、システムの開発、コンサルティング活動、大学での教育指導を続けている。

Linux.com 原文(2008年11月18日)