オープンソースのドローソフト、Inkscapeを図やイラストの作成に愛用しているのですが、先日、次の様な機械製図をしていてちょっと困りました。
機械製図では二点鎖線を中心線などとして使います。分かりやすい様に、二点鎖線の部分のみを取り出して描くと、次の様になります。
Inkscapeには一点鎖線を描く機能は標準で搭載されているので、二点鎖線も当然、標準機能で描けるものと思っていました。
今回は、Inkscapeで二点鎖線を描ける様にする方法について書きます。
なお、OSはWindows 10 64ビット版、Inkscapeのバージョンは0.92.4を使う事を前提に説明します。
一点鎖線を描く方法
まずは、Inkscapeの標準機能で描ける、一点鎖線を描く方法を説明します。ちなみに、一点鎖線とは、次に示す線です。
一点鎖線を描くには、Incscapeを起動して、用紙設定などを行ってから、ペンツールで直線(または曲線)を描きます。
次に、オブジェクト→フィル/ストロークメニューを選んで、フィル/ストロークのダイアログボックスを開き、ストロークのスタイルのタブをクリックします。
ここで、最初に描いた直線(または曲線)を選択状態にすると、ストロークのスタイルが変更できるようになります。ここで、線種を一点鎖線に変更すると、最初に描いた直線(または曲線が)一点鎖線になります。
以上の様に、一点鎖線が描けました。
私は、最初は、「線種で二点鎖線を選べば二点鎖線も簡単に描ける」と思い込んでいたのですが、実際にやってみると、線種にはデフォルト状態では二点鎖線がありませんでした。
線種に二点鎖線を追加する方法
結論からいうと、二点鎖線を描くには、線種に二点鎖線を追加すればいいのです。Inkscapeにはカスタムの線種を追加する機能が用意されています。ただ、その追加の方法が、すこしややこしいのです。
参考にしたページ
線種の追加の方法を調べるために、インターネットで色々検索しましたが、次のページが参考になりました。
参考リンクの1つ目(Custom Dash Styles)は、Inkscapeの公式フォーラムの投稿なのですが、投稿者が、「折り紙の折り図(説明図)の山折りの線をInkscapeで正しく書く方法を見つけた」として、その方法を解説したものです。
ちなみに、折り紙では、谷折りの線に破線、山折りの線に二点鎖線を使う習慣があります。
私が今書いている記事は、基本的にはInkscapeの公式フォーラムのCustom Dash Stylesに書いてある事を、丁寧に説明したものです。
ただ、Custom Dash Stylesの投稿は英文ですし、図を使わずに説明しているので、分かりにくいところがあります。また、この投稿の通りやってみたところ、一部うまくいかなかったところがありますので、訂正して説明します。
preference.xml
Inkscapeにはpreference.xmlというファイルがあり、このファイルを書き換えると、Inkscapeの動作を色々カスタマイズできます。
通常はpreference.xmlを直接書き換えるのではなく、編集→Inkscapeの設定メニューで開くInkscapeの設定ダイアログボックスで設定を変更します。
しかし、このダイアログボックスでは設定できない項目も色々とあり、そういう項目の設定を変えたい場合は、preference.xmlを書き換える必要があります。線種の追加の場合も、preference.xmlを書き換える必要があります。
preference.xmlのあるフォルダ
先ほど紹介したCustom Dash Stylesの投稿では、Documents and Settings\USERNAME\Application Data\Inkscapeというフォルダにpreference.xmlがあると書いてありますが、これは古いOSの場合で、Windows 10の場合は、c:\ユーザー\(ユーザー名)\Application Data\Inkscapeに変わっています。
エクスプローラでそのフォルダを開くと、preference.xmlが見つかると思います。
線種に二点鎖線を追加する手順
- Inkscapeを起動していたら、閉じます。
- c:\ユーザー\(ユーザー名)\Application Data\Inkscapeフォルダをエクスプローラで開き、preference.xmlを見つけます。
- preference.xmlをコピーし、バックアップします。(ここではバックアップファイルをpreference-original.xmlという名前にしています) バックアップを取るのは、preference.xmlの編集に失敗してInkscapeが正常に起動しなくなった場合の対処のためです。
- preference.xmlをサクラエディタなどのテキストエディタで開き、dashesグループ(<group id=”dashes”>と書いてある部分)を探します。
- dashグループの最後に、下記の文字列を追加してpreference.xmlを保存します。
<dash id="dash-8-2-1-2-1-2" style="stroke-dasharray:8,2,1,2,1,2" />
- Inkscapeを起動し、何か線を描いてみます。フィル/ストロークのダイアログボックスのストロークのスタイルのタブを見ると、線種に二点鎖線が追加されているのが分かると思います。
線種の設定に関する追加情報
二点鎖線を追加する時に、以下の文字列をpreference.xmlのdashグループに追加しました。
<dash id="dash-8-2-1-2-1-2" style="stroke-dasharray:8,2,1,2,1,2" />
ここで3行目のstyle=”stroke-dasharray:8,2,1,2,1,2″の意味を考えてみましょう。
これは、線の幅を1として、長さ8の線を引き、長さ2の空間を空け、長さ1の線を引き、長さ2の空間を空け、長さ1の線を引き、長さ2の空間を空けるという意味です。これは、グリッドの間隔を1mmとして、幅1mmの二点鎖線の直線を描くと良く分かります。
ちなみに、id=”dash-8-2-1-2-1-2″の部分は、線種に名称を与えています。他の線種と名前が異なれば、dash-8-2-1-2-1-2の部分は、好きな名称に書き換えてもOKです。
この事が分かっていると、思い通りの線種を追加できます。
わかりやすい記事で大変参考になりました。