2016-09-15 2 views
0

Мое приложение статически связывает libfontconfig.a с macOS, но не поставляется с файлами конфигурации fontconfig.Статическое связывание fontconfig: отключить файл `fonts.conf`

Каждый раз, когда приложение запускается, оно дает предупреждение о fonts.conf не найдено. После этого он возвращается к настройкам fontconfig по умолчанию, и все работает отлично. Есть ли способ создать или настроить fontconfig, чтобы никогда не использовать fonts.conf и вместо этого всегда использовать настройки по умолчанию?

ответ

0

Я думаю, сам вопрос на самом деле собирается узнать этот недостающий файл.

В настоящее время деталь вашего приложения неясна, такие как целевая платформа Mac OS X или прошивка (так что этот ответ может быть обновлен, если OP предоставляет больше информации), но я думаю, что вы удалили fonts.conf случайно и:

Согласно к резюме man fonts-conf или online manual. Для Linux fonts.conf обычно находятся:

/etc/fonts/fonts.conf 
/etc/fonts/fonts.dtd 
/etc/fonts/conf.d 
$XDG_CONFIG_HOME/fontconfig/conf.d 
$XDG_CONFIG_HOME/fontconfig/fonts.conf 
~/.fonts.conf.d 
~/.fonts.conf 

Но в вашем случае, этот файл должен быть отправлен с приложением, так как Mac OS X и IOS приложение не зависят от зависимостей. Так что я попытался найти fonts.conf файл на моем MacBook с:

sudo /usr/libexec/locate.updatedb 
locate fonts.conf 

Кстати, я нашел его под GIMP:

/Applications/GIMP.app/Contents/Resources/etc/fonts/fonts.conf 

Позже я решил искать его в GitHub и я нашел его под эти репозитории: 1 | https://github.com/EricssonResearch/cerbero/blob/master/data/xcode/templates/ios/GStreamer%20Base.xctemplate/fontconfig/fonts.conf 2 | https://github.com/xil3f/podofo_iOS_sample/blob/cd0be2d225d0bdfbe3c0ec163fb4cce67534825f/fonts/fonts.conf

Эти файлы почти идентичны.

Для кросс-платформенный Linux-возникла Mac OS X приложение он находится в: ./Contents/Resources/etc/fonts/fonts.conf

Для IOS образцов приложений он находится в: ./fontconfig/fonts.conf или ./fonts/fonts.conf

Таким образом, эти места могут дать вам представление о том, где поставить файл fonts.conf в свой проект.

Вы можете либо попытаться поместить эти файлы fonts.conf выше необходимое место (места), или вы можете использовать этот sample configuration file предоставленный Apple Open Source для OS X:

<?xml version="1.0"?> 
<!DOCTYPE fontconfig SYSTEM "fonts.dtd"> 
<fontconfig> 
    <dir>/System/Library/Fonts</dir> 
    <dir>/Library/Fonts</dir> 
    <dir>~/Library/Fonts</dir> 
</fontconfig> 

P.S. Пожалуйста, оставьте комментарий, чтобы мы могли улучшить ответ вместе.