既存のテキストパスを分割し、文字の穴を開いたままにするには、パス → パスを分割を使います。パスを分解ですでに穴が塗りつぶされている場合は、操作を元に戻すか、各文字の外側の輪郭と内側の輪郭を再結合します。

このガイドでは、Mac上にある既存のベクターテキストのアウトラインを、扱いやすいオブジェクトに分割し、塗りつぶされたカウンター(文字の内部に囲まれた空間)を修復して、その空間が透明なままであることを確認する方法を説明します。キーボードショートカットを読み替えずに操作できるよう、メニューコマンドを使います。

「パスを分解」すると文字の穴が塗りつぶされるのはなぜですか?

文字のアウトラインには、1つのパスオブジェクト内に複数のサブパスが含まれることがあります。たとえばアウトライン化されたOには、通常、外側の輪郭と内側の輪郭があります。これらの輪郭が合わさって、塗りつぶされた輪と空の中心が定義されます。InkscapeのAdvancedチュートリアルでは、複数のサブパスが複合パスを形成する仕組みと、重なり合うサブパスによって穴ができる仕組みが説明されています。

パス → 分解は、すべてのサブパスをそれぞれ独立したオブジェクトに分けます。そのため、内側の輪郭は周囲の文字の穴として機能しなくなり、単独で塗りつぶされる図形になります。輪郭そのものは通常残っていますが、外側の輪郭との関係が変わっています。公式のブーリアン演算ガイドでは、独立したオブジェクトへの分離について説明されています。

分離されたオブジェクトの塗りルールを変えても、元の関係は復元できません。複合パスに戻すか、該当する輪郭をもう一度組み合わせる必要があります。塗りルールは、SVG描画仕様の定義に従い、サブパスをまとめて考慮して図形内の塗りつぶし領域を決定します。

必要な結果に合うコマンドはどれですか?

操作後に必要な構造に応じてコマンドを選びます。グループ、複合パス、個別の輪郭の集合は見た目が似ていても、動作は異なることがあります。

開始時の状態と目的 コマンド 構造上の結果
複合テキストパスがあり、穴を保ったまま、つながっていない図形を分割する パス → パスを分割 関連する輪郭は、分割後のパス内で一緒に保たれる
すでに個別の文字パスに分かれたグループがあり、その文字にアクセスする オブジェクト → グループ解除 各文字のサブパスは分割されず、グループが解除される
複合パスから、すべての輪郭を個別に取り出す パス → 分解 外側の輪郭と穴の輪郭が別々のオブジェクトになる
分離された輪郭から、穴のある文字を再構築する パス → 結合 選択した輪郭から1つの複合パスが作られる

公式のキーボードとマウスのリファレンスでは、パスを分割は穴のある部分を一緒に保つと明記されています。オブジェクトのグループ化ガイドでは、グループ解除により既存のオブジェクトを囲むコンテナを取り除くことが説明されています。これらのコマンドは、それぞれ異なる構造上の問題を解決します。

アートワークを変更する前に、別の作業用コピーを保存します。次に、アウトライン化されたテキストを選択し、ステータスバーを確認して、選択したものがパスかグループかを調べます。グループの場合は、既存の文字パスにアクセスするのに必要なところまでだけグループ解除し、パス操作を適用する前にそれらを確認します。

この違いを知ると、古いチュートリアルと新しいドキュメントの説明が異なる理由もわかります。Inkscapeの1.3リリースノートには、テキストを文字パスのグループに変換する方式から、テキスト全体を1つのパスに変換する方式への変更が記載されています。そのため、既存のファイルの作成方法によっては、グループ解除またはパスの分割が必要になります。

カウンターを保ちながらテキストパスを分割する方法

穴が正しく表示されている複合パスには、次の手順を使います。

  1. ドキュメントの作業用コピーを保存します。
  2. セレクターツールを有効にし、既存のテキストパスだけを選択します。
  3. パス → パスを分割を選びます。
  4. キャンバスの何もない場所をクリックして、選択を解除します。
  5. 分割後の図形を1つ選択し、少し移動して確認します。
  6. カウンターが外側の輪郭と一緒に動き、穴が開いたままであることを確認します。元の位置に戻すには、確認のために移動した操作を元に戻します。

パスを分割は、穴を保ちながら、サブパスを関連するオブジェクトに分けるためにInkscape 1.2で導入されました。1.2リリースノートには、交差しない部分を分け、交差する部分は一緒に保つという幾何学的なルールが記載されています。

このルールには重要な制限があります。元のテキスト文字を復元するものではありません。接触または重なり合う文字のアウトラインは一緒に残る場合があり、文字の離れた構成要素は別のオブジェクトになる場合があります。そのため、1.3リリースノートでは、アウトライン化されたテキストを分割して個々の文字を復元する方法は、あくまで近似的なものとされています。

離れた構成要素を文字と一緒に動かす必要がある場合は、分割後の両方のオブジェクトを選択して、オブジェクト → グループ化を選びます。グループ化すると、それぞれのオブジェクトとしての識別を保ちながら、一緒に変形できるようになります。詳細はオブジェクトのグループ化に記載されています。

「パスを分解」の後に穴を復元する方法

不要な操作が最近のものであれば、編集 → 元に戻すを選んで元のカウンターが戻るまで操作を戻し、その後パス → パスを分割を適用します。元に戻すと必要な作業まで失われる場合は、残っている輪郭を使って文字を1つずつ再構築します。

外側の輪郭とすべての穴を再結合する

  1. セレクターツールを有効にします。
  2. 文字1つの外側の輪郭とすべての内側の輪郭を囲むように、選択範囲をドラッグします。隣の文字は範囲に入れないでください。
  3. パス → 結合を選びます。
  4. 選択を解除してから文字をもう一度選択し、輪郭が1つのパスにまとまったことを確認します。
  5. カウンターのある残りの文字についても同じ操作を繰り返します。

完全なオブジェクトを選択範囲で囲む方法は、公式のキーボードとマウスのリファレンスに記載されています。塗りつぶされた輪郭のどれが前面にあるかに頼らずに選択できます。アートワークが密集している場合は、作業用コピーに広いスペースを作ってから選択してください。

結合は、選択した部分を1つのパス内に保持し、合体の計算は行いません。結合したオブジェクトには1つの塗りと線が適用され、Advancedチュートリアルによると、最も下にある選択オブジェクトのスタイルが引き継がれます。そのため、スタイルの異なる輪郭を再結合すると、見た目が変わることがあります。

カウンターが塗りつぶされたままなら塗りルールを確認する

再結合した文字を選択した状態で、オブジェクト → 塗りと線を開き、塗りタブの塗りルールのコントロールを確認します。Inkscapeのキーボードリファレンスでは、これらは winding/alternating コントロールと呼ばれ、SVGでの値はnonzeroとevenoddです。ダイアログのメニュー上の場所は、塗りと線ダイアログに記載されています。

小さく、交差しない内側の輪郭を含む単純な外側の輪郭では、交互ルールのevenoddを使うと、輪郭の向きに関係なく内側の領域が穴になります。巻き方向ルールのnonzeroでは、輪郭の向きも考慮されます。これらの動作はSVGのfill-rule定義に基づいています。

まず、修復した文字1つだけにこの調整を適用します。輪郭が重なっていたり、入れ子が深かったりすると、塗りつぶされる領域が変わることがあります。保存した参照用の画像と文字全体を比較してください。外側の輪郭だけを選択した場合や、誤って隣の文字を含めた場合は、塗りルールを切り替えるだけでは修正できません。

違いを理解するための簡単な抽象図形の練習

次の構成は、ドキュメントに記載された操作をもとにした説明用の練習です。特定のフォントを使わずに違いがわかるよう、穴のある幾何学図形を2つ使います。

  1. 別のドキュメントで、大きな長方形と、その内側に完全に収まる小さな長方形を描きます。四方に十分な余白を残します。
  2. 小さい長方形を大きい長方形より前面に置きます。両方を選択して、パス → 差分を選び、長方形の枠を作ります。
  3. 別の場所に大きな楕円と、その内側に完全に収まる小さな楕円を描きます。小さな楕円を前面に置いて両方を選択し、パス → 差分を適用して輪を作ります。
  4. 長方形の枠と輪を離した状態にします。両方を選択して、パス → 結合を選びます。
  5. この2つの図形からなる複合パスを、練習の開始状態として保存します。

ブーリアン演算ガイドでは、減算、結合、重なり順の重要性が説明されています。この例では、前面にある小さい図形の領域が、背面にある大きい図形から差し引かれます。

この状態からパス → 分解を適用すると、2つの外側の輪郭と2つの内側の輪郭が、4つのオブジェクトに分かれます。操作を元に戻してからパス → パスを分割を適用すると、意図した結果は、内側の境界がそれぞれ周囲の境界と一緒に保たれた2つの穴のあるオブジェクトです。この比較は、1.2リリースノートに記載されている、穴を保持する動作に基づいています。

4つのオブジェクトに分かれた状態からの修復も練習できます。長方形の組だけを選択して結合し、塗りルールを確認します。楕円の組でも同じ操作を行います。これにより、選択すべき輪郭がはっきりします。穴のあるオブジェクトには、それぞれ外側の輪郭と内側の輪郭が必要です。

これらの操作の後も編集できるものは何ですか?

修復方法を選ぶ前に、次の操作の違いを把握してください。

  • グループ解除はコンテナを取り除きます。中のオブジェクトはそれぞれ独立して編集できます。
  • 結合は、編集可能なサブパスを含む1つのパスと、共通のスタイルを作成します。個別のオブジェクトのスタイルは保持されません。
  • 分解はサブパスをオブジェクトに分け、塗りの相互作用を変えます。
  • パスを分割は、関連する穴の輪郭を保ちながら、既存のジオメトリを別々のパスに再編成します。
  • 差分は、前面のオブジェクトを背面のオブジェクトから差し引いて、新しいパスを計算します。元の図形が必要な場合は、先にコピーを保存してください。

これらの違いは、公式のAdvancedチュートリアル、パスコマンドのリファレンス、グループ化ガイドに基づいています。複合文字を復元する場合は、通常、輪郭を再結合するのがより直接的な修復方法です。別々の図形から新しい開口部を意図的に作る場合は、差分を使います。

アウトライン化されたテキストは、入力済みのテキストではなくノードとして編集できます。分割しても再結合しても、フォントの選択や文字の編集機能は復元されません。Advancedチュートリアルでは、テキストをパスに変換すると、テキスト固有の機能が失われることが説明されています。

仕上がった文字の穴を確認する方法

修復したパスの背面に、一時的にコントラストの高い長方形を配置します。オブジェクト → 最背面へ移動を使います。本当のカウンターなら、その文字を通して長方形が見えます。文字の上に白い図形を置いただけなら、その図形自体の塗りが引き続き表示されます。重なり順を変更するコマンドは、公式のキーボードとマウスのリファレンスに記載されています。

次に、修復した文字を選択して、一時的に動かします。外側の境界とカウンターが一緒に動くはずです。離れた構成要素も個別に確認し、一時的な背景の長方形を削除する前に、意図した位置に戻します。

入れ子になった図形の動作が予想と異なる場合は、アートワークを手作業で再構築する前に、インストールされているバージョンを確認してください。1.4.3リリースノートには、パスを分割で入れ子になった穴の扱いが改善されたことと、「パスを分解」の後に小さいオブジェクトが周囲の大きなオブジェクトの前面に戻るよう変更されたことが記載されています。差分を使う場合は、特定の輪郭が前面にあると思い込まず、重なり順を明示的に確認してください。

既存のアウトライン化されたテキストでは、まず選択したオブジェクトの構造を確認します。既存の文字オブジェクトをグループ解除するか、カウンターを保ちながら複合パスを分割するか、すでに分離された輪郭を再結合します。最後に、透明度と一緒に動くことを確認します。この2つのチェックで、穴が正しく見えることと、編集したいオブジェクトに穴が含まれていることを確かめられます。

参照資料