MENU
コンテンツ再構築中

Objective-C:iOSアプリで外部フォント(カスタムフォント)を表示する方法

アプリ内で外部フォント(カスタムフォント)を使用し表示させる方法を紹介します。

INDEX

使用する外部フォントと手順

使用できるフォントの種類

  • PostScript Type1ベースのOpenType (拡張子 .otf)
  • TrueTypeベースのOpenType (拡張子 .ttf)

概要

  1. フォントの準備とPostScript名の調査
  2. Xcodeプロジェクトにフォントファイルをインポート
  3. アプリケーションの info.plist にフォント情報を追加
  4. コードから利用する

外部フォントを表示する

フォントの準備とPostScript名の調査

まず最初に Mac に標準でインストールされている Font Book を起動し、使用したいフォントのPostScript名を調べます。

Font Book で使用したいフォントを選択し、「プレビュー」>「フォント情報を表示」 で確認します。


img_140801_1
今回使用する Arial Black の Regular は Arial-Black というPostScript名になっています。

img_140801_2
ついでにフォントファイルをデスクトップにコピーしておきます。

Xcodeプロジェクトにフォントファイルをインポート

デスクトップにコピーしたフォントファイルを Xcodeプロジェクトの Supporting Files にドラッグします。

img_140801_3
Copy items…、Create groups…、ターゲットのアプリ項目をチェックし「Finish」でインポートが完了です。

img_140801_4

アプリケーションの info.plist にフォント情報を追加

プロジェクト を選択し InfoタブCustom iOS Target Properties の適当な項目で「右クリック」>「Add Row」を選択

img_140801_5
Fonts provided by application と入力し(途中から自動で補完されます)項目を追加。

img_140801_6
Value に拡張子を含む フォントファイル名(PostScript名ではない)を入力。

img_140801_7

コードから利用する

先ほど FontBook で調べた PostScript名 をコードで下記のように指定すればフォントが出力されます。
[code]
CGSize winSize = [[UIScreen mainScreen] bounds].size;
UILabel *myLabel = [[UILabel alloc] init];
myLabel.frame = CGRectMake(0, 0, 250, 50);
myLabel.center = CGPointMake(winSize.width/2, winSize.height/2);
myLabel.font = [UIFont fontWithName:@”Arial-Black” size:32];
myLabel.textAlignment = NSTextAlignmentCenter;
myLabel.text = @”Arial Black!”;
[self.view addSubview:myLabel];
[/code]
無事出力されました。

img_140801_8

まとめ

オリジナルフォントを制作し、アプリ上で表示させた時の感動は何事にも代えがたいです。
フォント一つでアプリの表情もガラリと変わってくるので、UIデザインの一環として、カスタムフォントにこだわってみるのもいいかもしれませんね。

この記事がみなさんのお役に立ちましたら、下記「Share it」よりブックマークやSNSで共有していただければ幸いです。

Please share it!
  • URLをコピーしました!
  • URLをコピーしました!
INDEX