我的某些SVG图标在缩放显示器(Win10)或使用高DPI显示器(Win10,Linux,Mac)时无法正确缩放。这适用于分配给QAction并由QMenu条目或QToolButtons显示的图标,以及分配给QDockWidgets的图标,如所附屏幕截图的上部所示。
下部的图标绘制在派生的paintEvent(..)中,并完美呈现。
使用选项QApplication::setAttribute(Qt::AA_UseHighDpiPixmaps);
,系统希望在像素图上使用一些缩放试探法,以使图标变得前卫:
有没有什么方法可以让qt在SVG基础上重绘图标,而无需派生所有显示图标的类?
真诚的 JJ
答案 0 :(得分:0)
我也遇到了SVG图标的问题。对我来说,这是由于SVG文件与我尝试呈现为SVG文件之间的宽高比差异引起的。我尝试渲染为正方形,但我的SVG文件不是正方形。在SVG文件中设置正方形尺寸可以解决该问题。