「Xamarin.Mac/システムフォントを取得する(CGFont)」の版間の差分
ナビゲーションに移動
検索に移動
imported>Administrator |
imported>Administrator |
||
1行目: | 1行目: | ||
[[Mac]]のシステムフォントを取得するにはNSFontクラスのSystemFontOfSizeメソッドを使用する。 | [[Mac]]のシステムフォントを取得するにはNSFontクラスのSystemFontOfSizeメソッドを使用する。 | ||
− | 一方、[[ | + | 一方、[[CoreGraphcis]]で低レベルな文字描画をする際に使うCGFontクラスにはシステムフォントを取得する手段がなく、NSFontでシステムフォントを取得し、そこからフォント名を取り出してCGFontを生成するという流れになる。地味にNSViewを継承したカスタムビューを作る際には多用する代物である。 |
これに限らず[[macOS]]は「手段はひとつ」ということが多い。 | これに限らず[[macOS]]は「手段はひとつ」ということが多い。 | ||
10行目: | 10行目: | ||
[[category: Xamarin.Mac]] | [[category: Xamarin.Mac]] | ||
− | [[category: | + | [[category: CoreGraphics]] |
2017年8月4日 (金) 08:58時点における版
Macのシステムフォントを取得するにはNSFontクラスのSystemFontOfSizeメソッドを使用する。
一方、CoreGraphcisで低レベルな文字描画をする際に使うCGFontクラスにはシステムフォントを取得する手段がなく、NSFontでシステムフォントを取得し、そこからフォント名を取り出してCGFontを生成するという流れになる。地味にNSViewを継承したカスタムビューを作る際には多用する代物である。 これに限らずmacOSは「手段はひとつ」ということが多い。
var nsFont = NSFont.SystemFontOfSize(14);
var cgFont = CGFont.CreateWithFontName(nsFont.FontName);