MacRubyアプリで、カスタムの埋め込みフォントを使いたい場合、ユーザーにフォントをインストールしてもらう必要はありません。
リソースフォルダに、フォントファイルを置いて、以下のコードを用いるだけです。
font_location = NSBundle.mainBundle.pathForResource('MyCustomFont', ofType: 'ttf') font_url = NSURL.fileURLWithPath(font_location) # in MacRuby, always make sure that cocoa constants start by an uppercase CTFontManagerRegisterFontsForURL(font_url, KCTFontManagerScopeProcess, nil)
これで、カスタムフォントが利用可能になりました。そして、テキストフィールドのインスタンスのフォントを以下のように設定します。
text_field.font = NSFont.fontWithName('MyCustomFont', size:24)
一つだけ注意すべきなのは、Cocoa APIの呼び出しに関して、Cocoa APIリファレンスではkCTFontManagerScopeProcessとしているところを、Rubyでは、定数が大文字から始まるので、KCTFontManagerScopeProcessとしなければなりません。
コメント