Exception Code.

iPhone、Macと読書が大好き。iPhone・Mac・書評を中心に好きな事を書いていました。今は『ほーくブログ』でブログを書いています。

[XCode]iPhoneに入っていないフォント(カスタムフォント)を使えるようにする方法と注意点

      2013/09/06

スクリーンショット 2012 12 14 1 03

iPhoneは結構いろんなフォントが使えますが、「オリジナルのフォントを使いたい!」という方もいるはず。

僕もとある事情でiPhoneに入っていないフォントを使うことになったのですが、ここで予想外の落とし穴があり、文字通りハマッてしまったので注意点をここに記しておこうと思います。

カスタムフォントをXCodeで使えるようにする

今回はフリーフォントの「たぬき油性マジック」というフォントを使います。

参考
TrueType形式のフリーフォント「たぬき油性マジック」を公開しました。: たぬきフォント

フォントを使いたいプロジェクトにドラッグしてコピーします。

スクリーンショット 2012 12 12 23 24

僕は「Resources」というグループを作成して、そこに入れました。

スクリーンショット 2012 12 12 23 24

このままでは使用できないので、「.plist」ファイル(Supporting Files内)を開き、右クリック→AddRowを選択。

Keyは「Fonts provided by application」を選択し、Item0のValueに追加したフォントのファイル名(ttf含む)を入力します。今回は「TanukiMagic.ttf」です。

スクリーンショット 2012 12 12 23 36

 んで、フォントを変えたいテキストにフォントを指定してやります。

lblCustomFont.font = [UIFont fontWithName:@"Tanuki-Permanent-Marker" size:30];

こんな感じです。

名前を間違えるとフォントが変わらない

ここで注意して欲しいのが、フォント名の部分。ずっと追加したファイル名の拡張子(ttf)抜きだと思ってハマっていました。

Macでフォントファイルをインストールして、フォントを選択した後にcommand+Iをキーボードで押した時に出てくる「PostScript名」を入力してやらねばなりません。

Font Book

特に日本語フォントは想像できない名前だったりするので気をつけましょう。

 - 開発/プログラム

  関連記事

bloggerXcode-icon-375x375-75.png
[XCode]ARC使用中にエラー「EXC_BAD_ACCESS」「respondsToSelector」が出た場合の対処法

なんでも、このエラーは解放済み(ゾンビ)のインスタンスにアクセスした時に出るエラ …

bloggerXcode-icon-375x375-75.png
[XCode]スキャナーで読み取れるバーコード(JANコード・Code39)をフォントで表示する方法と注意点

Passbookなどもそうですが、最近はクーポンや会員証などの電子化をよく目にし …

無料でプライベートリポジトリをゲットできるgitBREAKがかなり使える

gitといえばおおよそgithub。しかしgithubは無料でパブリックリポジト …

bloggerXcode-icon-375x375-75.png
[XCode]UINavigationBarにUIBarButtonItemでボタンを追加する方法

アプリ開発には欠かせないナビゲーションバー。 UINavigationBarにボ …

プログラミングができるだけではプロジェクトは成功しない

プログラマーなのに最近は電話対応で1日が終わる僕です。いろんな所でうめき声ととも …

bloggerXcode-icon-375x375-75.png
[XCode]gitでcommitしたファイル(リモートリポジトリ)を巻き戻す方法

結構前からgitを実験的に導入してcommitやpushをしています。とうとう先 …

デスマーチを止める!システム開発の成功に「設計」と「テスト」は欠かせない

「デスマーチ」という、IT業界で名の知れた用語があります。 商品知識のない営業が …

bloggerXcode-icon-375x375-75.png
[XCode]追加してインポートしたヘッダーファイルが見つからないときの対処法3つ

XCodeでインポートの宣言をした際(import <hoge.h> …

bloggerXcode-icon-375x375-75.png
[XCode]NSNotificationってなに?って人もとりあえずこれだけは知っておくべき

異なるクラス間で通知や変数を渡したりできる便利なNSNotificationです …

bloggerXcode-icon-375x375-75.png
[XCode]Title set but using a system Identifierなる警告が出たときの対処法

最近iPhoneアプリ開発を始めた@hawk_aです。 StoryBoardを使 …