QGraphicsViewを再実装して、マウスホイールイベントでシーンをズームするようにしました。シーンには、いくつかのQGraphicsPixmapItemが含まれています。ホイールイベントコールQGraphicsView :: scale(qreal sx、qreal sy)QGraphicsViewでアンチエイリアスが機能しない
すべてが完璧に動作しますがレンダリングされます。縮小すると(シーンが小さくなります)、エイリアシングが表示されます。私は再実装QGraphicsViewコンストラクタで、次のようにレンダリングヒントを設定しようとした:
ImageViewer::ImageViewer(QWidget * parent) :
QGraphicsView(parent)
{
setRenderHints(QPainter::Antialiasing | QPainter::SmoothPixmapTransform | QPainter::HighQualityAntialiasing);
}
私はまだこれらの成果物を参照してください。どうすればこれを取り除くことができますか?
あなたは何が起こっているのスクリーンショットを投稿できますか?アイテムにキャッシュ戦略を設定していますか? – peppe
ありがとう@ペッペ!キャッシングについては何も設定していないので、デフォルトになっていると思います。これは、以前のようなものの例です(https://lh6.googleusercontent.com/-e2pH06jhy94/Ue09l8A1SWI/AAAAAAAAY08/YGa-wj9ollY/w958-h599-no/Fullscreen+capture+7222013+100003+AM.jpg )(1:1ピクセル比率)と[after](https://lh4.googleusercontent.com/-PZJVX0jl6yw/Ue09mo_Iu2I/AAAAAAAAY1E/nMf28uA9MlE/w958-h599-no/Fullscreen+capture+7222013+100007+AM.jpg) (1:1未満の画素比率)ズームアウト。同心円にはいくつかのエイリアシングがあります。 – Algo