在MSVC2010中具有不同分辨率的图标

时间:2012-12-17 21:11:03

标签: c++ visual-c++ icons embedded-resource

ALL,

我正在制作一个需要使用图标的应用程序。 我有2个图标文件:myicon-16.ico和myicon-32.ico。首先是分辨率16x16,第二个是32x32。 现在当我打开MSVC 2010项目(C ++)时,我看到默认图标文件有两个图标组合在一起,即它在一个文件中有一个16x16和32x32的资源。我的意思是当我在Visual Studio解决方案中打开资源文件并单击标准图标时,我看到图标有很多不同的分辨率。我可以选择每个,并以适当的分辨率显示位图(图标)。但是当我在文本编辑器中打开rc文件时,我只看到两行:一行带有我自己的图标,另一行带有标准图标“IDI_SMALL”。

我需要做些什么来与我的2个文件做同样的事情?我想要的是当我在VS中打开资源文件并单击我的图标资源时,我希望看到2个具有16x16和32x32分辨率的图标。 AFAIU,我只能在rc文件中放置一个额外的图标资源。或者我错了?

请告知。

2 个答案:

答案 0 :(得分:1)

您可以使用VS2010在ico文件中添加其他图像类型。只需用VS2010打开一个ico文件。说,打开myicon-16.ico。你会看到一个图标 - 16x16。现在打开菜单Image-> New Image Type(或使用右键单击> New Image Type,或使用键盘快捷键Ins)。您将看到从16x16 1位到128x128 24位的选择。只需插入任意数量的内容即可。

对于您的情况,您需要将空32x32插入myicon-16.ico,然后从32像素文件中复制并粘贴。

旁注。谁现在画了图标。只需谷歌免费图标,您将在互联网上找到大量图标库,大小从16x16到256x256 png。

答案 1 :(得分:0)

是的,您需要将图像合并到一个包含所有数据的ICO文件中。

来自Wikipedia

  

ICO文件包含多个尺寸和颜色的一个或多个小图像   深度,以便它们可以适当缩放。

有许多图像编辑器可以做到这一点,我个人使用GIMP来创建多层png文件,然后保存为.ico以获得最终结果。

您还应该能够在VS2010中右键单击图像大小列表,然后单击“新图像类型”以在内置ICO编辑器中添加不同的分辨率。然后,您可以将其他编辑器中的图像数据复制并粘贴到Visual Studio中。