【发布时间】:2015-04-06 07:14:32
【问题描述】:
所以我有一个Q::Painter,它画了一些圆圈。在 Windows 上,它完美地绘制了圆圈,但在 iOS 上,它是像素化的:
这是非像素化图像:
如果有人能帮我解决这个问题,我会非常高兴。代码是完全相同的,但 iOS 渲染它很糟糕......
这是我的代码:
void CQtPercentCircleWidget::paintEvent(QPaintEvent *pe)
{
int circleX = parentWidget()->width()/2 - m_iCircleWidth/2;
int circleY = m_iPenWidth;
QRectF normalCircle(circleX, circleY, m_iCircleWidth, m_iCircleHeight);
QPainter painter(this);
painter.setRenderHints((QPainter::Antialiasing,QPainter::HighQualityAntialiasing), QPainter::SmoothPixmapTransform);
painter.setPen(m_qpenNormalColor);
painter.drawEllipse(normalCircle);
QRectF activeCircle(circleX, circleY, m_iCircleWidth, m_iCircleHeight);
int startAngle = 90 * 16;
double dProgress = (double)m_iProgressPercent;
int currentAngle = (dProgress / 100) * (360 * 16);
painter.setPen(m_qpenCurrectPenColor);
painter.drawArc(activeCircle, startAngle, currentAngle);
}
【问题讨论】:
-
您应该在问题中提供您的代码,以帮助其他人识别问题。
-
我在我的问题中提供了它。我认为现在更好:)
标签: ios qt qpainter paintevent