qt qtoolbutton图标模糊

qt qtoolbutton图标模糊,qt,icons,qtoolbutton,Qt,Icons,Qtoolbutton,我遇到一个问题,即附加到QToolButton的QMenu上的QToolButtons上使用的图标看起来模糊。我试过不同尺寸的24x24,32x32,64x64,不同的格式,如png和svg,但看起来总是很奇怪。 在图像上,您可以看到所选动作和菜单上的顶部动作具有相同的图标,但菜单中的图标模糊。即使是选中的那一个也不是很锋利 对于这些图标是否有一些具体的指导原则,或者我做错了什么?第二个和第三个图标是一个内置图标,我相信它是24x24 svg,但我无法复制。是的,如果你想让它们在QToolBu

我遇到一个问题,即附加到
QToolButton
QMenu
上的
QToolButtons
上使用的图标看起来模糊。我试过不同尺寸的
24x24
32x32
64x64
,不同的格式,如
png
svg
,但看起来总是很奇怪。 在图像上,您可以看到所选动作和菜单上的顶部动作具有相同的图标,但菜单中的图标模糊。即使是选中的那一个也不是很锋利


对于这些图标是否有一些具体的指导原则,或者我做错了什么?第二个和第三个图标是一个内置图标,我相信它是
24x24 svg
,但我无法复制。

是的,如果你想让它们在QToolButon和QMenu下看起来更好,你需要设置不同大小的图标,QT会选择最合适的大小。如果使用资源文件,一种可能的解决方案如下:

QIcon *myQIcon = new QIcon;
myQIcon->addFile(":icon24.svg", QSize(24,24));
myQIcon->addFile(":icon16.svg", QSize(16,16));

mMyQAction->setIcon( *myQIcon );

详细说明可在此处找到:

是的,如果您想让图标在QToolButon和QMenu下看起来更好,则需要设置不同大小的图标,QT将选择最适合的大小。如果使用资源文件,一种可能的解决方案如下:

QIcon *myQIcon = new QIcon;
myQIcon->addFile(":icon24.svg", QSize(24,24));
myQIcon->addFile(":icon16.svg", QSize(16,16));

mMyQAction->setIcon( *myQIcon );

详细解释如下:

也许你的图标不在一个完整的像素上,而是在像素之间略微偏移和插值?尝试轻推图标的实际内容,看看它是否变得更好。检查这个链接,我刚刚试过,它可能真的有点关联,虽然我不能调整到正确的点。我使用的像素编辑器捕捉到像素,如果我向上移动一个像素,线条的上半部分会模糊,向下移动时,上半部分会模糊。也尝试使用矢量图像并捕捉到像素网格,但仍然模糊…您的图像可能捕捉到像素,但Qt也可能影响比例或位置。这些东西也可能因平台和gui风格而异。从下载的
查看全屏
svg
24x24
图像直接加载,图像也很模糊。因此,基本上像
QIcon::fromTheme(“查看全屏”)
这样加载图标并不模糊,像
QIcon(:/currentWindow.svg”)
这样加载图标也不模糊。我可能加载错误了吗?看起来调用
QIcon::fromTheme(“查看全屏”)
实际上可以返回3种不同大小的
16x16
22x22
24x24
。今天,我将尝试确定是否可以在资源文件中设置三种不同的大小,并为所有三种文件提供相同的别名。也许您的图标不在完整像素上,而是在像素之间略微偏移和插值?尝试轻推图标的实际内容,看看它是否变得更好。检查这个链接,我刚刚试过,它可能真的有点关联,虽然我不能调整到正确的点。我使用的像素编辑器捕捉到像素,如果我向上移动一个像素,线条的上半部分会模糊,向下移动时,上半部分会模糊。也尝试使用矢量图像并捕捉到像素网格,但仍然模糊…您的图像可能捕捉到像素,但Qt也可能影响比例或位置。这些东西也可能因平台和gui风格而异。从下载的
查看全屏
svg
24x24
图像直接加载,图像也很模糊。因此,基本上像
QIcon::fromTheme(“查看全屏”)
这样加载图标并不模糊,像
QIcon(:/currentWindow.svg”)
这样加载图标也不模糊。我可能加载错误了吗?看起来调用
QIcon::fromTheme(“查看全屏”)
实际上可以返回3种不同大小的
16x16
22x22
24x24
。今天我将尝试确定是否可以在资源文件中设置三种不同的大小,并为这三种文件提供相同的别名。