1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Skia Tips:Arial系フォントの使い方

Last updated at Posted at 2025-11-09

Skiaで、Arialのような多くのタイプフェイスを持つフォントを使用する場合、少々面倒な手順が必要です。ここでは、Arial Blackフォントを例に、その使い方を説明します。

そもそもなんで面倒なの?

SKFontのコンストラクタを思い出してください。第一引数に指定するのは、フォント名ではなく、タイプフェイス(SKTypeface)です。この場合、Arialフォントファミリーのデフォルトのタイプフェイス、という意味になります。

font = new SKFont( SKTypeface.FromFamilyName( "Arial" ), 100 );

Arial Blackは、単体のフォントではなく、Arialファミリーのスタイルの一つとして提供されています。そのため、"Arial Black"という名前で直接取得することはできません。

文字列で指定する方法

少々面倒ですが、"Arial"というフォントファミリー名と、"Black"というスタイル名さえ分かっていれば、以下の手順でArial Blackを使用することができます。

まず、SKFontManagerを使用して、Arialフォントファミリーのスタイルの一覧を取得します。

using var fontManager = SKFontManager.Default;
using var stylesArial = fontManager.GetFontStyles( "Arial" );

次に、取得したスタイルの中から、スタイル名 "Black" を持つスタイルを見つけ、対応するタイプフェイスを作成します。

for ( int i = 0 ; i < stylesArial.Count ; i++ ) {
    if ( stylesArial.GetStyleName(i) == "Black" ) {
        typefaceArialBlack = stylesArial.CreateTypeface( i );
        break;
    }
}

SKTypefaceはアンマネージドリソースです。用が済んだら片づけておきましょう。

最後に、取得したタイプフェイスを使用して、SKFontを作成します。

using var font = new SKFont( typefaceArialBlack, 100 );

完成です!

emboss.png

タイプフェイスのパラメータで指定する方法

フォントのタイプフェイスのパラメータが分かっている場合、直接指定してタイプフェイスを取得することもできます。
Arial Blackは、太さが900、幅が5(拡張)、傾きがUpright(直立)で定義されています。これらのパラメータを使用して、以下のようにタイプフェイスを取得できます。

var typefaceArialBlack = SKTypeface.FromFamilyName( 
    "Arial",  // フォントファミリー名
    900,      // 太さ (Weight)
    5,        // 幅 (Width)
    SKFontStyleSlant.Upright  // 傾き (Slant)
);

なお、"Arial"フォントファミリーには10個のスタイルが存在します。それぞれのパラメータは以下の通りです。

スタイル名 太さ (Weight) 幅 (Width) 傾き (Slant)
Normal 400 5 Upright
Narrow 400 3 Upright
Cursiva 400 5 Italic
Narrow Italic 400 3 Italic
Negreta 700 5 Upright
Narrow Bold 700 3 Upright
Negreta cursiva 700 5 Italic
Narrow Bold Italic 700 3 Italic
Black 900 5 Upright
Black Oblique 900 5 Oblique

総合目次

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?