--- qsgpainternode.cpp 2014-07-29 13:29:03.000000000 +0900 +++ qsgpainternode.cpp.new 2014-07-29 13:30:19.000000000 +0900 @@ -171,6 +171,12 @@ painter.end(); if (m_actualRenderTarget == QQuickPaintedItem::Image) { + QPixmap pixmap(m_size*2); + pixmap.setDevicePixelRatio(2.0); + pixmap.convertFromImage(m_image); + pixmap.scaled(m_size); + m_image = pixmap.toImage(); + m_texture->setImage(m_image); m_texture->setDirtyRect(dirtyRect); } else if (m_multisampledFbo) { @@ -292,8 +298,8 @@ } else { if (!m_image.isNull() && !m_dirtyGeometry) return; - - m_image = QImage(m_size, QImage::Format_ARGB32_Premultiplied); + m_image = QImage(m_size*2, QImage::Format_ARGB32_Premultiplied); + m_image.setDevicePixelRatio(2); m_image.fill(Qt::transparent); }