setRenderHint(QPainter::RenderHint hint, bool on=true) 公共函数用于设置渲染操作,譬如:
| Opération | 值 | 说明 | 备注 | 
|---|---|---|---|
| QPainter::Antialiasing | 0x01 | 尽可能消除图元边缘锯齿。 | 常用 | 
| QPainter::TextAntialiasing | 0x02 | 尽可能消除文本锯齿。 | 要强制禁用文本抗锯齿,不要使用此提示。 应在字体样式策略中设置 QFont::NoAntialias。 | 
| QPainter::SmoothPixmapTransform | 0x04 | 使用平滑像素图变换算法 (譬如:双线性) 而不是最近相邻。 | |
| QPainter::VerticalSubpixelPositioning | 0x08 | 将文本定位在垂直和水平方向的像素分数处,若字体引擎支持。 目前所有平台中的 Freetype 都支持这,当提示首选 QFont::PreferNoHinting,及在 macOS。 这种用例可能是将字形与其它视觉原语对齐。 | 该值在 Qt 6.1 添加。 对于大多数用例,这不会提高视觉品质,但可能增加内存消耗且会降低一些文本渲染性能。 因此,不推荐启用此除非用例要求。 | 
| QPainter::LosslessImageRendering | 0x40 | 使用无损图像渲染,每当可能时。 | 该值在 Qt 5.13 添加。 此提示才使用,当 QPainter 用于输出 PDF 文件透过 QPrinter or QPdfWriter,调用 drawImage()/drawPixma () 将使用无损压缩算法而不是有损 JPEG 压缩编码图像。 | 
| QPainter::NonCosmeticBrushPatterns | 0x80 | 当采用具有某一预定义图案样式的笔刷进行描绘时,还要沿描绘对象变换图案。 | 该值在 Qt 6.4 添加。 默认是将图案视为化妆,以便将图案像素直接映射到设备像素,独立于任何活动变换。 | 
setRenderHint 公共函数必须放在 QPainter 描绘器 begin(QPaintDevice * device) 公共函数后。
版权声明: 本文为独家原创稿件,版权归 乐数软件 ,未经许可不得转载。