Редко какой разработчик не желает красоты. Картинки всякие придают радости пользователю, поднимают настроение и обогащают скучные деловые интерфейсы визуальными элементами.
Разумеется и я в числе таких. Раньше я цеплял на кнопочки картинки, но по сети их гонять (как мне казалось) - только создавать дополнительный трафик. Как еще больше снизить объем передаваемых данных? С помощью шрифтов! Есть замечательный проект fontello который из картинок генерит шрифт. Оный шрифт уже можно использовать.
И сделал я свой шрифт KalpaSymbols, и загрузил его на сервер, и научил его загружаться в клиент и становиться доступным для использования. Для этого есть средство
QFontDatabase::addApplicationFontFromData
И все вроде хорошо, и грузится шрифт на сторону клиента и символы нужные показывает. И вот проверил я работу этой штуки на Винде. И тут обнаружилась странность. Нет, не то чтобы метод не работает. Работает, но (как бы это сказать) иногда. Причем закономерности в распознании нужного fontFamily я не выявил. Особенно противно когда много раз приложение стартует штатно, с нормальными шрифтовыми иконками,
а потом РАЗ, и не работает. Или пустота, или какой-то совершенно левый шрифт загрузит.
А шрифт для символа я определяю
setStyleSheet("QLabel{ color: #38363A; font-size: 12px; font-family: \"kalpa_symbols\"; }");
Проверял я всяко. И смотрел регистрируется ли шрифт в списке доступных гарнитур, и вшивал шрифт непосредственно в клиент. Ничего не помогает.
Попробую сейчас отказаться от setStyleSheet и определить явно загрузив шрифт через setFont. Может получится что.
Друзья, если у кого есть мысли на сей счет, буду очень признателен за совет. Ужели возвращаться к картинкам?

