【发布时间】:2019-11-08 18:48:45
【问题描述】:
当我使用 QPainter 绘制一条线时,即使我应用了抗锯齿,它也会从一个像素到另一个像素呈锯齿状移动。是否可以像在 Photoshop 中那样绘制一条线,在其中它从一个像素均匀地移动到另一个像素(即,如果线条位置不是精确的像素值,则会导致灰色像素)。
这是一个显示锯齿线的示例:
from PySide import QtGui
_pix = QtGui.QPixmap(640, 640)
_pix.fill('White')
_pen = QtGui.QPen("Black")
_pnt = QtGui.QPainter()
_pnt.begin(_pix)
_pnt.setPen(_pen)
_pnt.setRenderHint(_pnt.HighQualityAntialiasing, 1)
_pnt.drawLine(640.0/2-50, 10, 640.0/2+50, 640.0-10)
_pnt.end()
_pix.save('C:/temp/test.jpg', 'JPG')
我想我可以将图像绘制为 4 倍大小,然后将其缩小,但我想知道是否有办法避免绘制所有可能非常昂贵的额外像素。
【问题讨论】:
标签: python python-2.7 pyside qpainter qpixmap