Я написал приложение Qt с графическим интерфейсом, настроенным с помощью таблицы стилей Qt. Я использовал стиль Windows для всех платформ (Windows, Linux & Mac), но размер текста в Mac OSX меньше. Я думаю, что dpi отличается, но я не уверен. И я бы хотел, чтобы везде был одинаковый размер текста, как в Qt / Windows. Ты знаешь как это сделать? в C ++ или в Qt Style Sheet?
Если вы когда-нибудь работали со шрифтами в коде C ++, это приходит на ум:
Font font(..., int size, ...) {
// define font offset based on operating system
#ifdef _WIN32
#define OFFSET 0
#elif __APPLE__
#define OFFSET 2
#endif
return Font(..., size + OFFSET, ...);
// function will return a font that is 2 pts larger on Mac than on Windows
}
Это псевдокод; попробуйте это с объектом шрифта Qt, а не моим гипотетическим Font
класс и конструктор. Затем, вместо вызова конструктора шрифтов Qt, вы можете использовать эту функцию для создания объекта шрифта Qt.
Или, может быть, если вы меняете размер шрифта кнопки, например:
#ifdef _WIN32
#define OFFSET 0
#elif __APPLE__
#define OFFSET 2
#endif
QFont font = ui->pushButton->font();
font.setPointSize(16 + OFFSET);
ui->pushButton->setFont(font);
Других решений пока нет …