当我使用QPainter将drawText放到使用QFont的QPixmap上时,当操作系统启用了反别名时,就会出现反别名,但如果没有启用反别名,则不会出现反别名,即使我正在显式地设置QFont的呈现提示和字体的策略。
QPainter painter(&pixmap);
painter.setRenderHints(QPainter::Antialiasing | QPainter::TextAntialiasing);
font.setStyleStrategy(QFont::NoSubpixelAntialias); // I do not want clear-type我知道操作系统(在本例中是Windows 7)能够在操作系统级别关闭反别名文本时绘制反别名文本,因为visual studio会这样做。
如何让Qt覆盖操作系统的反别名设置?
搜索词:反别名
发布于 2016-01-08 19:35:07
您需要确保将QFont::PreferAntialias添加到font.setStyleStrategy调用中。就像这样:
font.setStyleStrategy(QFont::NoSubpixelAntialias | QFont::PreferAntialias);https://stackoverflow.com/questions/34684705
复制相似问题