【问题标题】:QPainter.drawText ugly font renderingQPainter.drawText 丑陋的字体渲染
【发布时间】:2014-03-17 14:36:46
【问题描述】:
qfont = QtGui.QFont('Ubuntu', 9)
#qfont.setHintingPreference(QtGui.QFont.PreferDefaultHinting)
#qfont.setStyleStrategy(QtGui.QFont.PreferAntialias)
qfont.setStyle(QtGui.QFont.StyleNormal)
qfont.setWeight(QtGui.QFont.Normal)
qpaint.setFont(qfont)
qpaint.drawText(qpix.rect() , QtCore.Qt.AlignBottom + QtCore.Qt.AlignCenter, Invent.get_item(i)['type'])

字体渲染(抗锯齿)与其他应用程序使用的不同。

http://rghost.net/53129449/image.png

如何让它看起来一样?

【问题讨论】:

  • 您的图片不再可用。试试把它放在 imgur.com 上?

标签: python-3.x qt pyqt4 font-rendering


【解决方案1】:

我不确定这是否直接适用于 pyQt,但在 c++ 端渲染提示需要在绘画被缩放时设置,否则看起来会很糟糕。以下是我设置标志的方式:

m_paintFlags = QPainter::RenderHint(QPainter::Antialiasing | 
    QPainter::SmoothPixmapTransform | 
    QPainter::HighQualityAntialiasing);

然后,在绘制任何东西之前的绘制事件中:

painter.setRenderHints(m_paintFlags);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-17
    • 2012-09-07
    • 2010-10-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多