2016-04-16 11 views
2

まず、Info.plistのATSApplicationFontsPathプロパティについて知っています。しかし、それは私のアプリケーションのためだけにカスタムフォントを追加します。そして、私は最初の打ち上げ時に、OS Xにフォントをインストールしたい。なぜなら、私のアプリはテキストを書き出すので、ユーザーが他のアプリでファイルを開くための適切なテキストフォーマットを失うことがないようにしなければならないからです。OS X dev:新しいフォントをシステムにインストールする方法

私は最終草案アプリでこの動作を見ました。それは、リソースフォルダーにカスタムフォントを持っています。 Info.plistにはATSApplicationFontsPathプロパティがありません。しかし、何らかの形で、最初の起動後、Final Draftはそれらのフォントをシステムにインストールして使用します。

どうすれば可能ですか?これを解決するのに近くに来なかった。

答えて

1

〜/ Library/Fontsに、またはadmin認証で/ Library/Fontsにフォントファイルをコピーできます。既に実行中のアプリ(インストールしているアプリを含む)がすぐに利用できるようにするには、CTFontManagerRegisterFontsForURLs()に​​と電話する必要があります。

あなたのアプリの外にこのような "永続的な"ものをインストールする前に、あなたに許可を求めることをお勧めします。

+0

CTFontManagerRegisterFontsForURLsを介してシステム全体に自分のフォントを登録することができました。今では、すべてのアプリで自分のフォントを使用できます。しかし、〜/ Library/Fontsにフォントをコピーすることはできません。 "フォント" "にアクセスする権限がないため、NSFileManager tellの"コピーできませんでした。私はそれがサンドボックスルールの限界だと思う。残念。 –

+0

はい、あなたのアプリがサンドボックス化されているかどうかを言及する必要があります。これは、定義上、できることを制限するためです。あなたのアプリ内からフォントを登録することに対する懸念は、あなたのアプリが削除された場合に起こります。 –

+0

私は自分のアプリを削除しようとしました。私がアプリに登録したフォントは他のアプリでは消えてしまっただけです。 –

関連する問題