Шрифты Qt имеют разные размеры в разных системах
При использовании Qt Designer для создания ui-файлов возникла следующая проблема:
Открытие одного и того же пользовательского файла в другой системе Linux приводит к разному отображению размеров шрифта. Таким образом, пользовательские файлы, созданные в одной системе, могут иметь слишком большие шрифты при открытии их с помощью Qt Designer в другой системе. Это делает текст нечитаемым во многих случаях. "Размер точек" виджетов одинаков в обеих системах, но для того, чтобы сделать их читаемыми на обеих системах, мне нужно вручную уменьшить размер точек в Qt Designer на одной системе в настоящее время.Что я могу сделать, чтобы обеспечить читаемость шрифтов во всех системах?
Используемые системы: SLES 10, SLES11, Debian.
3 ответа
Я столкнулся с подобной проблемой. В нашем случае это было связано с локальными настройками шрифтов Linux. И поскольку мы не могли заставить все компьютеры в мире использовать один и тот же шрифт, мы переопределяем шрифт в нашем приложении.
QFont _Font("Tahoma", 8);
QApplication::setFont(_Font);
Вы должны сделать это до того, как ваше главное окно будет создано.
Единственный риск, о котором я знаю, это то, что если по какой-то причине выбранный вами шрифт не будет установлен на компьютере, я верю, что он вернется к значению по умолчанию.
Надеюсь, это поможет.
Используйте void QFont::setPixelSize(int pixelSize) вместо::setPointSize.
Использование этой функции делает устройство шрифта зависимым. Используйте setPointSize() или setPointSizeF(), чтобы установить размер шрифта независимо от устройства.
Я перешел с Windows8 на Windows8, и размер шрифта не совпадает. Я пытался заставить его через main.cpp, используя
QFont _Font("Tahoma", 8);
_Font.setPixelSize(8);
QApplication::setFont(_Font);
Это изменило некоторые пункты, но некоторые не изменили. Я пытался проверить конфигурацию класса, но не нашел мысли, которая поможет.