下記の文章はGlyphs3ハンドブックを個人的に日本語に訳したもので、内容には誤訳を含む可能性もあります。誤訳により生じた一切の責任については負いかねますので予めご了承ください。 参考サイト:Glyphs3 Handbook(PDF)、Glyphs2.3ハンドブック日本語版(PDF)、Glyphs Handbook(WEB)、Microsoft Typography documentation、CSSでのOpenType 機能の構文
第1章 Glyphs 第2章 作成 第3章 環境設定 第4章 編集ビュー 第5章 パレット 第6章 フィルタ 第7章 フォントビュー 第8章 フォント情報 第9章 図形の再利用 第10章 スペーシングとカーニング 第11章 PostScriptヒンティング 第12章 TrueTypeヒンティング 第13章 マルチプルマスター 第14章 カラーフォント 第15章 読み込みと出力 第16章 拡張機能 第17章 補足資料(作成中)
- 9.1 コンポーネント
- 9.2 スマートコンポーネント
- 9.3 コーナーコンポーネント
- 9.4 キャップコンポーネント
- 9.5 セグメントコンポーネント
- 9.6 ブラシ
- 9.7 ピクセルツール
9.1 コンポーネント
コンポーネントとは、他のグリフの内部で使用されるグリフのことです。コンポーネントを使用すると、フォント全体で形状を複製して再利用することができます。例えば、グリフ「A」は、「Ä」「À」「Â」「Ã」「Å」などのグリフを作成するときに再利用することができます。また「¨」「`」「ˆ」「˜」「˚」のような発音補助記号は、Ö, È, Ĉ, Ñ, Ůなどの他の文字を形成するためのコンポーネントとして使用することもできます。
コンポーネントの元となったグリフは、コンポーネントのベースグリフと呼ばれます。コンポーネントから構築されたグリフは、コンポーネントグリフ(またはコンパウンドグリフ、コンポジットグリフ)と呼ばれます。ベースグリフを変更すると、コンポーネントもすべて変更されます。編集ビューでベースグリフを変更すると、関連するすべてのコンポーネントがリアルタイムで更新され、新しく行われた変更が反映されます。
出力時に「重なったパスを合体」オプションが選択されているCFFおよびTrueType形式フォントでは、コンポーネントはパスに分解されて出力されます。オーバーラップを除去しないTrueType形式フォント(バリアブルフォントなど)では、それぞれのコンポーネントの形状を保持したままでコンポーネントを分解します。TrueType形式フォントで重なったパスを合体せずにコンポーネントの形状を保持したいときは、出力スタイルに「Keep Overlapping Components」カスタムパラメーターを設定します。
9.1.1 コンポーネントグリフの生成
新しいコンポーネントグリフを追加する際、Glyphsは必要なコンポーネントを自動的に追加します。たとえば、「é」(eacute)グリフをフォントに追加すると、自動的に「e」コンポーネントと 「´」(acutecomb)コンポーネントで構築されます。 Glyphsはグリフ情報データベース(7.6.1「グリフ情報データベース」参照)を使って、どのグリフにどのコンポーネントを挿入するかを判断します。 この自動挿入は、必要なコンポーネントがフォント内に存在しない場合には行われません。
既存のグリフをコンポーネントに変換するには、グリフ → コンポーネントグリフを生成(Cmd–Ctrl–C)を選択します。このコマンドは、現在のレイヤーにすでに存在するすべてのパスとコンポーネントを置き換えます。Optionキーを押し続けると、グリフのすべてのマスターにコマンドが適用されます(Cmd–Ctrl–Opt–C)。
グリフ → コンポーネントを追加(Cmd–Shift–C)を選択して、任意のグリフを選択してコンポーネントを追加します。Optionを押しながらだと、すべてのマスターにコンポーネントが追加されます(Cmd–Opt–Shift–C)。コンポーネントピッカーの使用方法は、編集ビューでグリフを挿入する際に使用されるグリフピッカーと同じです。詳細は、4.9.3「テキストツール」を参照してください。
9.1.2 パスをコンポーネントに変換
新しいコンポーネントを作成するには、グリフレイヤー上のパスとコンポーネントを選択し、コンテキストメニューまたはメニューの「グリフ」→「選択パスをコンポーネント化」を選択します。ダイアログウィンドウが表示され、新しいコンポーネントのグリフ名の入力を求められます。Glyphsはその内容に応じてコンポーネント名を提案しますが、他の名前に変更することもできます。コンポーネントがGlyphsファイル内でのみ使用され、出力されるグリフの一部に含まれない場合はコンポーネント名の前にアンダースコア(_)を付けます。出力についてはグリフの出力プロパティも参照してください(8.3「出力」参照)。
ダイアログの内容を確認して「OK」を選択します。Glyphsは新しく作成されたコンポーネントを現在の編集ビューに追加し、それをアクティブにします。これまで選択されていた図形は、新しく作成されたコンポーネントで置き換えられます。
9.1.3 レシピ
グリフ → グリフを追加… からグリフを追加する際に、レシピ機能を使ってどのコンポーネントをどのグリフに使うかを定義することができます。レシピとは、新しいグリフを作成する際に使用するグリフ名の式です。以下のようなレシピが使用できます。
component=glyph:例えば「Eth=Dtail」では、「Eth」をコンポーネントとして持つ「Dtail」グリフを作成します。
base+mark=glyph:例えば「x+acutecomb=xacute」は、複数のコンポーネント(プラス記号で区切られたもの、この場合は「x」と「acutecomb」)を持つ新しいグリフ(「xacute」)を作成します。発音記号グリフはアンカーを基にしてベースグリフに自動整列されます。
base+base=glyph:例えば「d+ezh.connect=dezh」のように、1つのグリフに複数のベースグリフをコンポーネントとして追加します。合字を作るときに便利です。
9.1.4 コンポーネントの編集
編集ビューではコンポーネントをクリックして選択することができます。選択ツールでドラッグして選択する場合は、Optionキーを押していないとコンポーネントは無視されます。次のコンポーネントを選択するにはTabキーを、前のコンポーネントを選択するには Shift–Tabキーを押します。レイヤーにパスが存在する場合、一回目の 編集 → すべて選択(Cmd–A)の実行時はパスのみが選択されます。そこからさらにCmd–Aを押すと、レイヤー上のコンポーネントも含めたすべてが選択されます。
1つまたは複数のコンポーネントを選択すると、グリフ情報ボックスの隣にコンポーネント情報ボックスが表示されます。コンポーネント情報ボックスの詳細については、4.10.1「情報ボックス」を参照してください。
情報ボックスやバウンディングボックス(4.2.6「拡大縮小と回転」参照)、パレット(5.4「変形」参照)を使ってコンポーネントを変形させます。コンポーネントを垂直方向に反転させた場合、「top」アンカーに吸着していたコンポーネントは「bottom」アンカーに、「bottom」アンカーに吸着していたコンポーネントは「top」アンカーに吸着するよう、お互いに吸着先が切り替わります。このアンカーの切り替えは、例えば、小文字の「g」と、反転させたコンマアクセント「ʻ」からなる「gコンマアクセント(ģ)」を作成する際に役立ちます。
選択したコンポーネントはマウスまたは矢印キーで移動することができます。自動整列されたコンポーネントは垂直軸のみ移動可能か、または移動することができません。詳細は9.1.8「自動整列」を参照してください。矢印キーで移動するときは、10刻みの場合はShiftを、100刻みの場合はCommandを押しながら移動します。Optionキーを押しながらコンポーネントをドラッグするとコンポーネントが複製されます。Deleteキーを押すと、選択したコンポーネントをすべて削除できます。
9.1.5 ベースグリフとコンポーネント間の移動
グリフ内のコンポーネントを編集するには、コンポーネントをダブルクリックします。ベースグリフが編集ビューのコンポーネントグリフの左隣に配置され、編集できる状態になります。あるいはコンポーネントの情報ボックスの右上にある矢印ボタンをクリックして、そのグリフを編集することもできます。(情報ボックスを表示するには 表示 → 情報を表示 がオンになっている状態でそのコンポーネントを選択する必要があります)。
現在のグリフをコンポーネントとして使用しているグリフをすべて表示したいときは、編集ビュー上で右クリックしてコンテキストメニューから「このグリフをコンポーネントとして使用する全グリフを表示」を選択します。
9.1.6 コンポーネントの警告マーク
コンポーネントの警告マークは、コンポーネントに問題があることを示します。問題には3種類あります。
参照元グリフが空白:コンポーネントのグリフレイヤーが空の場合、「参照元グリフが空白」と書かれたプレースホルダーが表示されます。そのコンポーネントを削除するか、参照元のグリフレイヤーにオブジェクトを配置する必要があります。
no base glyph:「no base glyph」が表示されている場合、コンポーネントは存在しない(または存在しなくなった)グリフを参照しています。コンポーネントを削除するか、プレースホルダーをダブルクリックして参照するグリフをフォントに新たに追加してください。プレースホルダーをクリックすると、参照されているグリフの名前が情報ボックス(Cmd-Shift-I)に表示されます。
bad reference:「bad reference」は、コンポーネントがそのコンポーネントを含むコンポジットグリフを含む、循環参照を示します。
9.1.7 アンカー
Glyphsでは、OpenTypeフィーチャー(発音記号とベースの位置関係や連綿の位置合わせなど、4.4「アンカー」参照)とコンポーネントの配置にアンカーを使用します。多くの場合、同一のアンカーをフィーチャーとコンポーネントの配置の両方に利用することができます。
UnicodeではS(U+0053)のような基本文字と、̌ (U+030C)のような合成可能なマークの両方が定義されており、基本文字の後に合成可能なマークを入力することでアンカーを使ってベースグリフ上にマークを配置することができます。しかしながら、UnicodeにはŠ(U+0160)のような、すでに合成された状態の文字も存在しています。 これらの文字のグリフは、基本グリフと発音記号グリフをコンポーネントとして使用して構築することができます。
例えば「_top」アンカーを持つ発音記号コンポーネントは、ベースコンポーネントの「top」アンカーにスナップします。アンカーの扱い方については4.4.1「アンカーの追加・編集・削除」を参照してください。
状況によっては、1つのコンポーネントに同じタイプの複数のアンカーが必要になることがあります。例えば、ベトナム語の二重発音記号では「top」アンカーに複数のバリエーションが用意されることがあります。アンカーのバリエーションは元のアンカー名にアンダースコアの接尾辞を追加して命名します。例えば、同じグリフレイヤーに「top」と「top_alt」、「top_viet」などのアンカーを設定してそれぞれの管理を行います。アンダースコアの後の接尾辞は自由に命名することができます。
これらのアンカーを切り替えるには、接続されたコンポーネントを選択し、コンポーネントの情報ボックスのアンカー(錨)のアイコンから別のアンカーを選択します。情報ボックスを表示するには、表示 → 情報を表示(Cmd–Shift–I)を選択します。アンカーのアイコンは、複数のアンカーが利用可能な場合にのみ表示されます。
9.1.8 自動整列
コンポーネントのみで構築されるグリフはコンポジットグリフまたはコンパウンドグリフ(合成グリフ)と呼ばれ、自動調整を使用してそのメトリクスをベースグリフと同期させることができます。たとえば、グリフ「U」の左サイドベアリングを変更すると、Ú、Ù、Ŭ、Ü、Ūなどのコンポーネント「U」で構築されたグリフ、およびその他すべての合成グリフが自動的に調整されます。
グリフレイヤーにコンポーネント形状のみが含まれている(パス形状は含まれていない)場合、自動整列はデフォルトで有効になります。自動整列されたコンポーネントを右クリックし、コンテキストメニューから「自動整列を無効化」を選択すると、コンポーネントを手動で配置することができます。自動整列を再び有効にするには、コンポーネントのコンテキストメニューから「自動整列を有効化」を選択します。自動整列は、ファイル → フォント情報… → その他 → コンポーネントの自動整列を解除 で、フォント全体に対して無効にすることもできます。8.5.4「コンポーネントの自動整列を解除」も参照してください。
自動整列されたコンポーネントは、通常の灰色のコンポーネントと区別するために緑色で表示されます。コンポーネントが Number というカテゴリーで(たとえば「zero」〜「nine」など)、それが合成グリフの唯一のコンポーネントである場合、そのコンポーネントは青で表示され、水平方向に自動整列したまま垂直方向に移動することができます。
自動整列された合成グリフに対してはサイドベアリングがベースコンポーネントから算出されるため、メトリクスキーの使用はできません。ただし、=+ および =- 演算子を使用して自動サイドベアリング値に追加したり削除したりすることは可能です。詳細は10.1.4「メトリクスキーと自動整列」を参照してください。
自動整列は通常、単一のコンポーネント、1つ以上の発音記号コンポーネントを持つベースコンポーネント、または複数のベースコンポーネントに対して行われます。これらの3つのシチュエーションについては以下のセクションで詳しく説明します。
単一のコンポーネント
合成グリフにおいて単一の自動整列コンポーネントのみが使用される場合があります。これは同じ形状に見えるグリフが別々のグリフとしてエンコードされるような場合によく利用されます。例えば、「A」(Alpha、A、A-cy)、「B」(Beta、B、V-cy)、「P」(Rho、P、Er-cy)のように、ギリシャ語、ラテン語、キリル文字の大文字が同じアウトラインを共有している場合です。これらのグリフは異なる文字体系に属していて、別々のカーニンググループを使用している可能性があるため、1つのグリフに複数のUnicode値を持たせるのではなく別々のグリフとしてエンコードする必要があります。
また、「9」というグリフを反転して「6」とする場合にも、単一のコンポーネントでつくる合成グリフが便利です。前述のようにこのような数字のコンポーネントは青色で表示され、水平方向の自動整列の配置を維持したまま、垂直方向に移動させることができます。
また、「<」と「>」、「¿」と「?」、「{」と「}」などの記号や、「←」と「→」などの矢印も、反転した単一のコンポーネントから作られる例として挙げられます。
ベースコンポーネントと発音記号コンポーネント
ベースコンポーネント(例えば「U」)と発音記号を使用して、Ú、Ù、Ŭ、Ü、Ūなどの合成済みグリフが作成できます。 まずベースコンポーネントを追加して次に発音記号コンポーネントを組み合わせます。 例えば、「Ú」(Uacute)の場合、「U」コンポーネントを追加した後「´」(acutecomb)コンポーネントを追加します。「Ú」(Uacute)のようにグリフがグリフ情報データベースに登録されている場合は、グリフ → コンポーネントグリフを生成(Cmd–Ctrl–C)を選択することで必要なコンポーネントがすべて正しい順序で追加されます。
アンカーを使用し、ベースコンポーネントの上下や外側に発音記号を配置することができます。詳細は9.1.7「アンカー」を参照してください。複数の発音記号を1つの合成グリフに追加する場合、発音記号は追加された順に積み重ねられます。このためには、発音記号グリフにはアンダースコア付きのアンカー(「_top」など)とアンダースコアを持たないアンカー(「top」など)の両方を含める必要があります。フィルター → シェイプの順番を変更 を使用して、発音記号を並べ替えることができます(6.2.1 「シェイプの順番を変更」参照)。
アンカーで配置された発音記号コンポーネントは、合成グリフのサイドベアリングには影響を与えません。ただし、「¯」(macroncomb)を「ı」(idotless)の上に配置するようなときには「ī」(imacron)のマクロンが横に突き出してしまうことがありますので、このような場合は幅の狭いマクロンを設計してそれを「ī」に使用するか、合成グリフのサイドベアリングに手動で余白を追加します(10.1.4「メトリクスキーと自動整列」を参照)。
発音記号の使用については、発音記号のチュートリアルも参照してください。
複数のベースコンポーネント
合成グリフは、複数のベースコンポーネントを含むこともできます。それらは、あたかも一緒に入力されたかのように隣り合って配置されます。発音記号はベースコンポーネントのそれぞれに個別に配置することができます。まずベースコンポーネントを配置して次にそのすべての発音記号を配置し、次に次のベースコンポーネントとその発音記号を配置します。
複数のベースコンポーネントを合成グリフに追加することは、合字グリフを作成する際に便利です。合字にコンポーネントを利用することは、合字を多用するアラビア語のような文字体系では特に便利です。
ベースコンポーネントは連綿の位置合わせに使われるのと同じアンカーを使って接続できます(4.4.4「連綿体(続け書き)の位置合わせ」参照)。例えばこの手法を利用して、_part.stem と _part.arch のコンポーネントから n グリフを作成することができます。_part.stem には「#exit」アンカーが、_part.arch には「#entry」アンカーがあります。両方のコンポーネントをnグリフに追加すると、出口アンカーと入口アンカーが重なるように接続されます。_part.stem と 2 つの _part.arch コンポーネントから m 合成グリフを作成するには、_part.arch にさらに「#exit」 アンカーを追加します。アンダースコアで始まる名前のコンポーネントの扱いについては、9.1.14「アンダースコアで始まるグリフ名のコンポーネント」を参照してください。
9.1.9 コンポーネントのロック
コンポーネントを右クリックしてコンテキストメニューから「コンポーネントをロック」を選択することで、自動整列しないコンポーネントをロックすることができます。ロックされたコンポーネントは移動できません。コンテキストメニューから「コンポーネントをロック解除」を選択すると、コンポーネントのロックが解除されます。
9.1.10 コンポーネントの分解
グリフ → コンポーネントを分解(Cmd–Shift–D)を選択すると、グリフ内のすべてのコンポーネントをパスに変換できます。入れ子になっているコンポーネントも含めて、すべてのコンポーネントがパスとアンカーに分解されます。
コンポーネントのコンテキストメニューから「分解」を選択すると、選択したコンポーネントのみが分解されます。この場合は入れ子になっているコンポーネントは分解されません。
9.1.11 パスとコンポーネントの混合
レイヤー上にパスが存在すると自動配置は無効になります。そのため、コンポーネントとパスを組み合わせている場合はコンポーネントのベースグリフが変更された際に位置のずれが生じる可能性があるので注意が必要です。できるだけコンポーネントのみでグリフを構築し、9.1.7「アンカー」のように、アンカーを使用して自動整列を有効にすることをおすすめします。グリフが他のグリフの一部としてしか使われない場合には、グリフを出力時に含めないように設定するのが良いでしょう。非出力のコンポーネントの扱いについては、9.1.14「アンダースコアで始まるグリフ名のコンポーネント」および9.2「スマートコンポーネント」を参照してください。
ノードやアンカーなどの要素をドラッグすると、コンポーネント内のノードがハイライトされます。強調表示された点の近くで要素をドラッグすると、その位置に要素が固定されます。
1つのポイントと1つのコンポーネントが選択されている状態で パス → 選択ポイントを整列(Cmd–Shift–A)を選択すると、コンポーネントの原点の位置が選択したポイントの座標と一致するように、コンポーネントが移動します。選択したポイントはその位置を維持します。原点とは、斜体の角度が0の場合にベースラインが左サイドベアリングと交差する位置です。コンポーネントのグリフに「origin」アンカーが含まれている場合は「origin」アンカーが原点の位置として使用されます。
9.1.12 コンポーネントのネスティング(入れ子)
Glyphsではコンポーネントを入れ子にすることができます。例えば、「¨」(dieresiscomb)は、2つの「˙」(dotaccentcomb)コンポーネントから作ることができ、また、「ë」(edieresis)などのグリフのコンポーネントとしても使用できます。
「top」および「bottom」アンカーは、コンポーネントからそのコンポーネントが配置されているグリフへと継承されます。例えば、「bottom」アンカーを持つグリフ「E」を考えてみましょう。「Ë」(Edieresis)のような合成グリフが 「E」をコンポーネントとして持つ場合、E から「bottom」アンカーが継承されます。これにより、「Ë」自身が「bottom」アンカーを含んでいなくても、下付きサーカムフレックス(「Ḙ̈」の下部の記号、circumflexbelowcomb)のような下付きの記号を「Ë」の下に付けることができます。継承されたアンカーは、合成グリフ内にアンカーがあれば上書きされます。もし「Ë」グリフが独自の「bottom」アンカーを持っていれば、それは「E」コンポーネントの「bottom」アンカーを上書きすることになります。
ファイル → フォント情報… の「フォント」タブにカスタムパラメータ「Propagate Anchors」を追加し、そのチェックボックスを無効にすることで アンカーの上書きを防ぐことができます。
9.1.13 優先される発音記号のグリフ名
コンポーネントを自動的に構築するとき、Glyphsはコンポーネントと同じ名前の接尾辞を持つ発音記号を優先します。たとえば「agrave.sc」を生成するとき、もし「gravecomb.sc」という名前の発音記号グリフが存在していれば、Glyphsは「gravecomb」よりもそちらを優先します。また大文字を構築する際には「.case」という接尾辞を持つ発音記号が優先されます。たとえば、「Agrave」グリフを生成するとき、「gravecomb.case」という発音記号があればGlyphsは「gravecomb」よりも優先してそちらを使用します。これは大文字の限られた垂直方向のスペースに合わせて大文字用のダイアクリティカルマークを平らにしている場合などに役立ちます。グリフ「i」と「j」は、idotlessとjdotlessからdotaccentcombを用いて構築されます。「i」と「j」の合成グリフ、たとえば「ī」(imacron)や「ĵ」(jcircumflex)を作る場合は、Glyphsは「.i」や「.narrow」で終わるグリフを優先します。
9.1.14 アンダースコアで始まるグリフ名のコンポーネント
名前がアンダースコアで始まっているグリフはデフォルトの状態では出力されません。これを利用して他のグリフのコンポーネントとしてのみ使用されるグリフを簡単に作成できます。このようなグリフは合字グリフの作成などに役立ちます。一例として、「fl」や「f_f」など合字グリフの最初の「f」の形状に、非出力の「_f.connect」コンポーネントを利用することができます。
9.2 スマートコンポーネント
スマートコンポーネントを利用することで、1つのコンポーネントグリフ内でデザインプロパティのバリエーションを作成できます。各スマートコンポーネントには、幅、高さ、角度、丸み、その他任意のデザイン特性など、補間軸に沿って変化する独自のバリエーションのプロパティセットを持つことができます。スマートコンポーネントはマルチプルマスターやバリアブルフォントとよく似ていますが、バリエーションの軸はコンポーネント専用となります。
スマートコンポーネントは当初、アジアの文字体系向けに設計されました。アジアの文字体系ではCJKフォントのストロークやチベット文字のコンポーネントなど、わずかな形状変更で再利用されることが多くあります。このコンセプト(プロパティのバリエーションを持った再利用可能なコンポーネント)は、様々な文字体系やグリフに役立つことが証明されています。
9.2.1 スマートグリフの設定
スマートコンポーネントのグリフをスマートグリフと呼びます。すべての日中韓の部首および韓国語ベースのグリフはスマートグリフです。また、名前が「_smart.」または「_part.」で始まるグリフはすべてスマートグリフです。
スマートグリフのさまざまな形状(たとえば、「Narrow」と「Wide」、「Sharp」と「Rounded」など)は、スマートレイヤーに配置します。まずレイヤーパレットの左下にある「+」ボタンをクリックして新しいレイヤーを作成します。新規レイヤーの名前は現在の日付と時刻を元にして付けられますが、このままでは分かりにくいため、レイヤー名をダブルクリックして「Narrow」「LowContrast」「Small」など、バリエーションを表すのに最適な名前に変更します。例えば「Width」プロパティを持つ「_part.arrow」グリフの場合では、「Regular」マスターレイヤーに通常の矢印を描き、「Long」という名前の追加レイヤーに長いバージョンの矢印を描きます。なおスマートレイヤーはマスターレイヤーと互換性をもつ必要があります。レイヤーの互換性については、13.5「アウトラインの互換性」を参照してください。
スマートグリフのプロパティは、スマートコンポーネントが異なるレイヤー間をどのように補間するかを制御します。編集 → 選択グリフのプロパティを編集(Cmd–Opt–I)からスマートグリフ設定を開くか、コンポーネントのコンテキストメニューから「スマートコンポーネント設定」を選択します。設定画面は「プロパティ」と「レイヤー」の2つのタブに分かれています。
スマートグリフのプロパティ設定
「プロパティ」タブの左下にあるプラスボタンをクリックして、新しいプロパティを作成します。スマートグリフのプロパティはフォント設定の補間軸と似ています。プロパティでは、名前と最小値、最大値を設定します。名前は自由に決めることができ、レイヤー名や軸の名前と無関係なものでも構いません。なお「Width」と「Height」という名前を設定した場合のみバウンディングボックスの利用が可能になります。詳細は9.2.3「幅と高さのプロパティ」を参照してください。
最小値と最大値は任意の数値範囲で指定できますが、最小値は最大値よりも小さくする必要があります。また値には負の値も設定できます。デフォルトの0~100の範囲設定は、「コントラスト」や「曲率」のような抽象的なプロパティに適しています。バリエーションのプロパティが抽象的ではなく、「高さ」や「ディセンダーの深さ」のようにユニット単位に関連している場合は、最小値と最大値にユニット値の使用をおすすめします。「_part.arrow」の例では、通常の矢印の幅が445ユニット、「Long」レイヤーの矢印の幅が645ユニットであれば、最小値が445、最大値が645の「Width」プロパティを追加します。
なお、スマートコンポーネントは補間のほか「補外」も可能で、最小値以下や最大値以上の値も使用することができます。例えば「_part.arrow」コンポーネントの「Width」プロパティの値が445~645の場合、「Width」の値が210や936などの数値であっても利用可能です。補外は、矢印の尾が長くなったり短くなったりするような単純なバリエーションには有効ですが、「n」のアーチが広くなったり狭くなったりするような複雑なスマートコンポーネントでは、あまり好ましくない結果になることがあります。
補間を行わず、オン/オフの切り替えとしてのみ使用するプロパティには、最小値0、最大値1を使用します。
スマートグリフのレイヤー設定
「レイヤー」タブは、スマートグリフのプロパティとスマートレイヤーを結びつけます。サイドバーにはグリフのすべてのスマートレイヤーが表示されます。レイヤーを選択し、そのレイヤーが最小値に属するか最大値に属するかを設定します。レイヤーがプロパティと無関係の場合は2つの値のいずれもチェックをオフにします。例えば「Regular」と「Long」の2つのレイヤーと「Width」プロパティを持つグリフの場合、「Regular」レイヤーの「Width」最小値(左側)、「Long」レイヤーの「Width」最大値(右側)のチェックマークをオンにします。
複数のプロパティを持つ設定では、すべての極値の組み合わせを網羅するような全パターンのレイヤーを作成する必要はありません。例えば、「Width」(範囲640~1250)と「Height」(範囲80~360)の2つのプロパティを持つスマートグリフであれば、以下の3つのレイヤーがあれば十分です。
上記の場合、両方の最大値(「Width」が1250、「Height」が360)のレイヤーは不要です。Glyphsは「Wide」と「Tall」のレイヤーから輪郭を推測することができます。推測されるアウトラインが望ましいものではない場合にのみ、両端のレイヤーを追加することを検討してください。
9.2.2 スマートコンポーネントの使用
スマートコンポーネントの追加方法は他のコンポーネントと同様です(9.1.1「コンポーネントグリフの生成」で説明しています)。スマートコンポーネント選択時は、情報ボックスに「スマート」と書かれたボタンが表示されます。
情報ボックスが表示されていない場合は、表示 → 情報を表示(Cmd–Shift–I)を有効にした状態でスマートコンポーネントを選択し、情報ボックスの「スマート」ボタンをクリックするか、編集 → 選択グリフのプロパティを編集(Cmd–Opt–I)を選択して、選択したスマートコンポーネントのプロパティを編集します。パレットが表示されていて(ウィンドウ → パレット)、表示 → 情報を表示 がチェックされている場合は、パレットの下部にもスマートグリフ設定が表示されます。
スライダーを使用して、プロパティの設定値を最小値から最大値まで自由に設定することができます。数値フィールドには任意の値を入力でき、最小値や最大値を超えた数値も入力できます。最小値・最大値が0と1の場合は、スライダーではなくチェックボックスが表示されます。
9.2.3 幅と高さのプロパティ
スマートグリフのプロパティで「Width」または「Height」という名前(頭文字は大文字)を設定すると、バウンディングボックスでのコントロールができます。表示 → バウンディングボックスを表示(Cmd–Opt–Shift–B)をオンにしてスマートコンポーネントをクリックするとバウンディングボックスが表示されます。バウンディングボックスのサイズを水平方向に変更すると「Width」プロパティが変更され、垂直方向に変更すると「Height」プロパティが変更されます。「Width」や「Height」のプロパティを持たないスマートコンポーネントの場合はバウンディングボックスでのサイズ変更はできません。
9.2.4 スマートハンドル
スマートハンドルは、スマートグリフ上に配置されたコントロールハンドルを使って、プロパティを変更することができる機能です。スマートハンドルを使用するには、スマートグリフのプロパティ名と同名のアンカーを、すべてのスマートグリフレイヤーに配置します。アンカーの名前はプロパティの名前と大文字小文字まで正確に一致していなければなりません。プロパティに影響を与えるスマートグリフレイヤーでは、アウトラインに合わせて適切な位置にアンカーを設置します。これらのアンカーはすべてのプロパティに対して追加する必要はありません。
スマートグリフをコンポーネントとして使用する際、コンポーネントが選択されるとグレーのスマートハンドルが表示されます。スマートハンドルをクリック&ドラッグすることで、そのプロパティ値を変更することができます。
9.3 コーナーコンポーネント
コーナーコンポーネントは、パスの角に取り付けることができるオープンパスです。コーナーコンポーネントの主な用途はステムにセリフを追加することですが、他の状況でも応用することができます。
9.3.1 コーナーグリフの作成
コーナーグリフの名前は、「_corner.」で始め、「_corner.serifLeft」のように任意のコーナー名をその後に続けます。コーナーグリフでは、レイヤーの原点の座標 (0, 0) を挟むようにオープンパスを描きます。なお、レイヤー上に 「origin」という名前のアンカーが置かれている場合は、そのアンカーを原点として使用します。
コーナーコンポーネントのオープンパスは、それがステムの一部となったときに元のパスと同方向に沿うように配置する必要があります。一般的にはパスの開始点ノードは原点と同じ垂直軸上または水平軸上に配置されます。終点ノードの相対的な位置によってコーナーが広がる方向が決まります。例えば、コーナーがステムの左に展開する場合は、終点ノードを原点の右に配置します。
パスの方向が正しく設定されていないとコーナーが間違った方向に伸びてしまいます(例えば、左ではなく下に伸びるなど)。パス → パス方向を修正(Cmd–Shift–R)を選択してパス方向を修正するか、あるいはOptionキーを押しながらパス方向の修正を実行して、すべてのマスターに対して適用します(Cmd–Opt–Shift–R)。
「left」または「right」のアンカーをコーナーグリフに追加することができます。これらのアンカーは対角線上のステムにコーナーを追加する際の変形具合を制御します。左向きのコーナーには「left」のアンカーを、右向きのコーナーには「right」のアンカーを使用します。アンカーは原点とオープンパスの開始ノードの間に配置します(極端な変更をしたい場合は開始ノードより先に配置します)。「left」または「right」のアンカーを使用しない場合、Glyphsは原点の位置を使用します。
9.3.2 コーナーコンポーネントの使用
別のグリフ内のノードにコーナーコンポーネントを追加するには、そのノードを選択し、コンテキストメニューから「コーナーコンポーネントを追加」を選択します。グリフピッカーが開き、コーナーグリフの一覧が表示されます。目的のコーナーグリフを選び、Returnを押してコーナーコンポーネントを挿入します。コーナーコンポーネントを挿入しない場合は、Escを押します。
編集ビュー上では、コーナーコンポーネントは水色のラインで強調表示されます。クリックすることでコーナーコンポーネントを選択することができます。Shiftを押しながらクリックすると複数のコーナーコンポーネントを選択できます。選択されたコーナーコンポーネントは、編集 → コピー(Cmd–C)でコピーでき、編集 → 貼り付け(Cmd–V)で他のポイントに貼り付けることができます。選択したコーナーコンポーネントを削除するにはDeleteを押します。コーナーを右クリックして「コーナーコンポーネントを分解」を選択すると、コンポーネントがパスに置き換えられます。コーナーコンポーネントを選択するとその情報ボックスが表示されます(表示 → 情報を表示(Cmd–Shift–I)をオンにする必要があります)。
情報ボックスのコンポーネント名をクリックすることで、別のコンポーネントに置き換えることができます。編集ビューにそのコーナーグリフを表示したい場合は矢印ボタンをクリックしてください。コーナーのサイズを変更するには、水平および垂直の入力フィールドを使用します。これは、大文字の場合はセリフのサイズを大きく、小文字の場合は小さくしたいときなどに便利です。負の値(-100など)を使用すると、コンポーネントを反転させることができます。これによって、左下のセリフを左上、右下、右上に再利用することができます。また、パレットのミラーボタン(p.62参照)を使ってコーナーコンポーネントを反転させることもできます。
コーナーコンポーネントを垂直方向のパスに接続させたいときは、情報ボックスの4つの整列モードのうちの1つを選択します。
- 左矢印は、コーナーコンポーネントの開始ノード側を湾曲させ、終了ノード側を固定します。このモードは通常、左下と右上のセリフに使用されます。
- 右矢印は、コーナーコンポーネントの開始ノード側を固定し、終了ノード側を湾曲させます。このモードは通常、右下と左上のセリフに使用されます。
- 左右の矢印は、開始ノード側と終了ノード側の配置をブレンドし、両方を湾曲させます。このモードは通常、インクトラップなどのコーナーに使用されます。
- xマークは、開始ノード側も終了ノード側も湾曲しません。
9.3.3 コーナーコンポーネントの開始位置の調整
コーナーコンポーネントの開始位置とは、ステムがコーナーと接続しはじめる部分のことです。この位置はコンポーネントグリフにアンカーを追加することで調整できます。これは、斜めになったステムにコーナーコンポーネントを接続する場合に特に便利です。
コーナーの向きや角度を調整するには、コーナーコンポーネントにアンカー「left」を追加します。コーナーグリフのオープンパスが右向きの場合は、代わりに「right」アンカーを追加します。アンカーはレイヤーの原点とオープンパスの始点とを結ぶ線上に置く必要があります。
アンカーを開始ノードからベースラインに向かって遠ざけると、傾きが広い側のコーナーはステムが横に広がり、傾きが狭い側のコーナーはステムの横幅が短くなります (上の画像の左側参照)。反対方向にアンカーを移動させると逆の動作になります(上の画像の右側参照)。これらのアンカーがレイヤーに配置されていない場合、Glyphsではアンカーがレイヤーの原点に配置されていると見なします (上の画像の一番左の例と同じになります)。
9.3.4 コーナーコンポーネントの終了位置の調整
コーナーコンポーネントの終了位置とは、コーナーがステムに戻る際に接続される位置のことです。これによって、ステムのパスと異なる位置にコーナーの終端を移動することができます。このテクニックは、カップ付きのセリフによく使われます。
「right」アンカーを配置することで、コーナーの終了位置を再定義します。右向きのコーナーのグリフには、代わりに「left」アンカーを配置します。このアンカーはコーナーの終了位置としてオープンパスの終了ノードの代わりに使用されます。これによってコーナーの終端をベースラインの上または下に配置することができます。
9.3.5 閉じたパスの追加
コーナグリフには1つのオープンパス以外に、閉じたパスを含めることができます。これによって、コーナーの内側または外側に形状を追加することができます。
オープンパスは、コーナグリフレイヤーの中で一番目のシェイプである必要があります。フィルタ → シェイプの順番を変更 で形状を並べ替ることができます。詳細は6.2.1「シェイプの順番を変更」を参照してください。
9.3.6 最終ポイント
表示 → ポイントを表示 → 最終ポイント を選択すると、重なり合ったパスの交点にあるポイントが表示されます。これらの最終ポイントにコーナーコンポーネントを接続することもできます。コンテキストメニューの「コーナーコンポーネントを追加」からコーナーコンポーネントを最終ポイントに取り付けます。
最終ポイントにコーナーコンポーネントを適用してパスの交差位置でスムーズなトランジションを表現したり、ステムやクロスバーにインクトラップを追加することができます。
9.4 キャップコンポーネント
コーナーコンポーネントが1つのノードに接続するのに対し、キャップコンポーネントは2つのノードに接続します。2つのノードは、同一パス上で隣り合っている必要があります。キャップコンポーネントはスパー、ターミナル、フラグセリフなど、ストロークの最後に現れる形状に使用します。
9.4.1 キャップグリフの作成
キャップグリフの名前は「_cap.」で始め、その後に任意のキャップ名を続けます(例:「_cap.strokeend」)。キャップグリフは、レイヤの原点座標 (0, 0) を基準にして描かれたオープンパスで描きます。レイヤー上に ‘origin’ という名前のアンカーが置かれている場合は、そのアンカー位置が原点として扱われます。
キャップコンポーネントは「node1」と「node2」という2つのアンカーを含む必要があります。これらのアンカーは受け側グリフの2つのノードに取り付けられます。通常、2 つのアンカーは両方とも水平または垂直に配置され、コンポーネントが水平または垂直の 2 つのノードに取り付けられるようになっています。キャップコンポーネントは受信パスの方向を利用して、「node1」を1つ目のノードに、「node2」を2つ目のノードに合わせます。
ヒント:アンカーをXハイトやベースラインなどに配置することで、参照するグリフのステムがキャップのオーバーシュートに依存しないようにすることができます。
9.4.2 キャップコンポーネントの使用
同じパスの隣接する 2 つのノードを選択し、コンテキストメニューから「キャップコンポーネントを追加」を選択してキャップコンポーネントを配置します。グリフピッカーが開き、キャップグリフの一覧が表示されます。目的のキャップコンポーネントを検索し、Returnキーを押してコンポーネントを追加します。キャップを追加しない場合はEscapeを押します。
編集ビューでは、キャップコンポーネントは水色の背景で強調表示されます。キャップコンポーネントをクリックすることで選択することができます。複数のキャップコンポーネントを選択するにはShiftキーを押しながらクリックします。選択したキャップコンポーネントは 編集 → コピー(Cmd–C)でコピーでき、編集 → 貼り付け(Cmd–V)で他のセグメントに貼り付けることができます。選択状態のときにDeleteキーを押すと、選択しているキャップコンポーネントが削除されます。キャップコンポーネントを右クリックして、「キャップコンポーネントを分解」を選択すると、コンポーネントがパスに変換されます。
キャップコンポーネントを選択すると、情報ボックスが表示されます。(表示 → 情報を表示(Cmd–Shift–I)がオンになっている必要があります)
「フィット」のチェックボックスをオンにすると、キャップサイズと配置先のストロークのサイズが自動的に一致します。キャップコンポーネントはコーナーコンポーネントと同様に置換、変形、整列することができます。詳細は、9.3.2「コーナーコンポーネントの使用」を参照してください。
9.5 セグメントコンポーネント
セグメントコンポーネントは、直線または曲線のセグメントにオープンパスを適用します。オープンパスには、単一の曲線のセグメントのほか、多くのノードやカーブを含む複雑なパスも使用できます。
Glyphsはセグメントに合わせてセグメントコンポーネントを曲げる際にノードを追加しません。そのため、コンポーネントがセグメントの曲率に追従する精度が低下する可能性があります。しかし、ノードの数はマスター間で同じになるため、マルチプルマスターやバリアブルフォントでの補間が可能です。
9.5.1 セグメントグリフの作成
セグメントグリフの名前は「_segment.」で始め、その後に任意のセグメント名を続けます(例:「_segment.bend」)。セグメントコンポーネントにはベースラインに沿ったオープンパスと、「start」と「end」という2つのアンカーを設置します。グリフ → アンカーを自動設置(Cmd–U)を選択することで、これらのアンカーをオープンパスの開始ノードと終了ノードに自動配置できます。「start」と「end」のアンカーがパスの開始ノードと終了ノードに配置されていない場合、セグメントコンポーネントは、適用されるセグメントの長さと一致しなくなります。
パスの開始ノードと終了ノードは、ベースライン上にあるか、またはベースラインからの距離が同じである必要があります。
9.5.2 セグメントコンポーネントの使用
パスセグメントをクリックするか、両端のノードを選択して選択し、コンテキストメニューから「セグメントコンポーネントを追加」を選択すると、グリフピッカーが開き、セグメントグリフの一覧が表示されます。目的のセグメントを検索し、Returnキーを押して追加します。セグメントコンポーネントを追加しない場合はEscapeを押します。
編集ビューでは、セグメントコンポーネントが水色の背景で強調表示されていて、これをクリックすることで選択できます。Shiftキーを押しながらクリックすると複数のセグメントコンポーネントが選択されます。選択したセグメントコンポーネントは、編集 → コピー(Cmd–C)でコピー、編集 → 貼り付け(Cmd–V)で他のセグメントに貼り付けることができます。Deleteキーを押すと、選択したセグメントコンポーネントが削除されます。セグメントコンポーネントを右クリックして「セグメントコンポーネントを分解」を選択するとコンポーネントがパスに変換されます。セグメントコンポーネントを選択することで、そのセグメントコンポーネントに関する情報ボックスが表示できます(表示 → 情報を表示(Cmd–Shift–I)をオンにする必要があります)。
情報ボックスのコンポーネント名をクリックすると別のコンポーネントに置き換えることができます。矢印ボタンをクリックすると、編集ビューにセグメントグリフが追加され、そのグリフが選択状態となります。
9.6 ブラシ
ブラシで、カスタムしたアウトラインをパスセグメントに適用することができます。ブラシは直線および曲線のパスセグメントに適用できます。オープンパスに適用すると最も効果的です。
9.6.1 ブラシグリフの作成
ブラシグリフの名前は、「_brush.」の後に任意のブラシ名を続けたもので、例えば「_brush.arrow」のように名付けます。ブラシグリフは1本の閉じたパスと、「start」と「end」の2つのアンカーを含みます。グリフ → アンカーを自動設置(Cmd–U)を選択するとレイヤーの左右にアンカーが配置されます。一般的に、2つのアンカーはベースライン上に配置するか、ベースラインまでの距離が両方とも同じになるように配置します。
ブラシグリフは、1つの単一の閉じたパスのみを含むことができます。パス → 重なったパスを合体(Cmd–Shift–O)を使って、複数の閉じたパスを単一の閉じたパスにマージします。例えば下図の「_brush.arrow」グリフは、右向きの矢印の形を含んでいます。ブラシの伸びたり曲がったりする部分が2つのアンカーの間に入るように「start」と「end」のアンカーを配置します。ブラシコンポーネントで変形しない部分は、「start」アンカーの前と「end」アンカーの後に配置します。
上の画像のように、曲線のセグメントに沿って曲げられるブラシの部分にはハンドルが必要です。セグメントをOptionを押しながらクリックすることで、ハンドルを追加できます。
9.6.2 ブラシコンポーネントの使用
パスセグメントをクリックするか、その両方のノードを選択して選択し、コンテキストメニューから「ブラシコンポーネントを追加」を選択します。グリフピッカーが開き、ブラシグリフの一覧が表示されます。目的のブラシを検索し、Returnキーを押してブラシを追加します。ブラシを追加しない場合はEscapeを押します。
通常、ブラシは1つのセグメントで構成されるオープンパスに適用されます。複数のセグメントを選択してから 「ブラシコンポーネントを追加」を選択すると、複数のセグメントにブラシを追加できます。ノードを選択して「ブラシコンポーネントを追加」を選択すると、選択されているノードがブラシの終端になるようにブラシが配置されます。
ブラシは水色の背景で強調表示されています。ブラシの輪郭をクリックするとそのブラシが選択されます。Shiftキーを押しながらクリックすると複数のブラシが選択されます。選択したブラシは、編集 → コピー(Cmd–C)でコピー、編集 → 貼り付け(Cmd–V)で他のセグメントに貼り付けることができます。選択したブラシを削除するときはDeleteキーを押します。
ブラシを右クリックして「ブラシコンポーネントを分解」を選択すると、ブラシがパスに変換されます。ブラシを選択することで、そのブラシの情報ボックスを表示できます(表示 → 情報を表示(Cmd–Shift–I)をオンにする必要があります)。
情報ボックスのブラシ名をクリックすることで別のブラシに置き換えられます。矢印ボタンをクリックすると、編集ビュー上にブラシグリフが追加され、そのグリフが選択状態になります。
9.7 ピクセルツール
ピクセルツール(ショートカットX、鉛筆ツールが選択されている場合はShift–B)で、ピクセルコンポーネントを描画することができます。ピクセルツールを使用して、ピクセルフォントやピクセルシンボルを作成します。
9.7.1 設定
ピクセルツールではグリッドのユニット間隔が少なくとも2以上必要です。ファイル → フォント情報… → その他 → グリッドのユニット間隔で変更します。詳しくは、8.5.1「グリッドのユニット間隔とグリッド細分」を参照してください。
ピクセルツールは、編集ビューでクリックやドラッグをする際に、「pixel」という名前のピクセルグリフを使ってピクセルを描画します。ピクセルグリフがまだフォントに含まれていない場合、ピクセルツールでクリックするとGlyphsがピクセルグリフの作成を提案します。
「追加」をクリックするとピクセルグリフが作成されます。デフォルトではピクセルグリフはグリッド間隔と同じ大きさの正方形です。
9.7.2 ピクセルの描画
ピクセルツールを選択してクリックすると、キャンバス上にピクセルコンポーネントが追加されます。ピクセルコンポーネント上でもう一度クリックするとピクセルコンポーネントが削除されます。複数のピクセルを追加するには、マウスをクリックしてドラッグします。すでに追加されているピクセルの上でドラッグを開始した場合は、ドラッグ上のピクセルが削除されます。
9.7.3 ピクセルの形状
ピクセルグリフは任意の形状に変更することができます。ピクセルよりも小さなパスセグメントを描くには、一旦グリッドの間隔をより小さい数値(例えば、デフォルトの1)に下げます。例えば、ピクセルをクロスステッチのようなマークに変更します。その後再度グリッドの間隔を元に戻し、ピクセルツールを使用します。
前:#8 フォント情報|現在:#9 図形の再利用|次:#10 スペーシングとカーニング
コメント