iOS13とフォントの世界

By hcrane / くれいん

Elevator Pitch

WWDC2019では、SwiftUIやCombineに注目が集まりましたが、それ以外にもたくさんのアップデートがありました。

それは「フォント」です。

Appleは新しいAPIをいくつも用意し、フォント周りの機能を強化を図ってきました。しかしながら、多くの開発者はこの事実に触れていません。そのため、知見が出回らずブラックボックスになっている部分が多いです。実際のところ、機能が増えたけど何が変わったのかよくわからない点も多く存在します。

今回はフォントAPIを使用したアプリ開発の経験を元に、皆様をフォントの世界へとみなさんをお連れしたいと思います。

Description

このセッションでは、

  • フォントのAPIについてiOS13で何が変わったのか
  • フォントをサブスクリプションとして利用する
  • フォントを使った際のデザインの仕方

についてフォーカスしていきます。

セッションの中では、フォントのAPIを総ざらいしつつ、WWDCでのフォントのセッションをさらっと復習していきつつ、iOS13以前と以後で何が変わったのかを見ていきます。

また、Appleが公式で発表している「新しく追加されたAPI」に加えて、開発者にしか知らされていないサブスクリプションなどの「非公開のAPI」にも言及していきます。

実際にフォントを使うための例を見ていき、実際にアプリで使用するためにはデザイン的に何を押さえておくべきかなどにをディスカッションしていきたいと思っています。

Notes

Technical Requirements

WWDCでも紹介された以下のAPI

  • CTFontManagerRegisterFontURLs
  • CTFontManagerRegisterFontDescriptors
  • CTFontManagerRegisterFontsWithAssetNames
  • CTFontManagerCopyRegisteredDescriptors
  • CTFontManagerRequestFonts
  • CTFontManagerUnregisterFontURLs
  • CTFontManagerUnregisterFontDescriptors

これらに加えて、

  • Fonts - entitlements
  • info.plist - FontProviderSubscriptionSupportInfo
  • NSBundleResourceRequest
  • UIFontPickerViewController

など、フォント周りで必要となってくるAPIを扱っていきます。

Why you’re the best person to speak on this subject

AppleはWWDCでいくつかのフォントを提供することを発表しました。 その1つに日本を代表する「モリサワフォント」があります。

幸運なことにこのフォントを提供するアプリ開発に携わっていたので、 その経験を元により実践的な形でフォントAPIのお話を皆様にお伝えすることができます。