Использование UIAppFonts из основного приложения со шрифтами, включенными в пакет SwiftIOS

Программируем под IOS
Ответить
Anonymous
 Использование UIAppFonts из основного приложения со шрифтами, включенными в пакет Swift

Сообщение Anonymous »

Контекст

У меня есть пакет Swift со стилями дизайна и компонентами, которые повторно используются в разных проектах. Одним из таких стилей являются шрифты. Существует Fonts.xcassets (состоящий из вложенных файлов .ttf), который обрабатывается как ресурс.

Вопрос

Использовать эти шрифты достаточно просто, если мы зарегистрируем их с помощью CTFontManagerRegisterGraphicsFont (например, из AppDelegate).
Но из iOS app предпочтительно зарегистрировать собственные стили шрифтов с помощью UIAppFonts в Info.plist, как описано в этой документации Apple. Это также будет работать с предварительными версиями SwiftUI.
Поскольку Fonts.xcassets пакета не копируется в качестве ресурса в основной пакет приложения, UIAppFonts не работает AFAIK. Есть ли способ использовать шрифты, определенные в пакете с UIAppFonts?

Копировать сценарий ресурса (не идеально)

Мы может скопировать .xcassets пакета в ресурсы пакета с помощью скрипта:

Код: Выделить всё

FONT_DIR="${SRCROOT}/Path/To/SwiftPackage/Resources/Fonts.xcassets"
DEST_DIR="${BUILT_PRODUCTS_DIR}/${PRODUCT_NAME}.app"
cp "$FONT_DIR"/*.ttf "$DEST_DIR"
Но путь к пакету Swift будет проходить через производные данные, что очень запутанно.


Подробнее здесь: https://stackoverflow.com/questions/793 ... ft-package
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «IOS»