VS2010 常用图标包中有一张图片仅包含 PNG 格式,我想将其用作 ICO(我希望 XP 及更早版本的用户能够看到该图标)。如何将 PNG 转换为 ICO?
答案1
对于一次性任务我通常只是作弊:ConvertICO.com。
如果你经常这样做,你可能需要考虑免费 Photoshop 插件。
答案2
开源图像魔法 convert
实用程序可以将多幅图像打包成一个图标文件。它提供图像调整大小功能以生成多种尺寸的图标,并支持各种其他图像处理。Imagemagick 包含多个图像处理实用程序,是开源的,可免费使用,可在多个平台(Linux、Windows、Mac Os X、iOS)上使用,并且可以轻松批处理,例如在持续集成管道中。
在这种情况下,一种实用的方法是使用向量SVG图像格式作为输入,因为它可以生成多种尺寸的一致图像(如伊科文件内容)。
第一个选项是一行程序convert
,自版本 v7.0.0+ 开始允许使用:
convert logo.svg -define icon:auto-resize=256,128,48,32,16 icon.ico
第二种方法是分步方法,png
在临时文件夹中生成各种文件。此方法适用于所有版本,包括旧版本:
convert icon.svg -scale 16 tmp/16.png
convert icon.svg -scale 32 tmp/32.png
convert icon.svg -scale 48 tmp/48.png
convert icon.svg -scale 128 tmp/128.png
convert icon.svg -scale 256 tmp/256.png
之后,可以使用以下命令将多个png
文件打包到最终文件中icon.ico
:
convert tmp/16.png tmp/32.png tmp/48.png tmp/128.png tmp/256.png icon.ico
最后需要注意的是:独立convert
二进制文件不再默认安装。在 Windows 上,您必须检查(非常明确)安装旧版实用程序(例如转换)选项。如果您错过了,只需使用稍长的magick convert
命令,而不是独立convert
命令。
答案3
要将 PNG 文件转换为 ICO 文件,您可以使用 ffmpeg 运行此命令(将 img 替换为输入和输出文件的名称):
ffmpeg -i img.png img.ico
然而,大多数机器上并没有预装 ffmpeg,必须手动安装。
在 Windows 上安装 ffmpeg
您可以在此处按照下载安装:https://ffmpeg.org/download.html
一个更简单的替代方案是:
- 打开 Microsoft Store
- 安装“应用安装程序”
- 打开命令提示符
- 运行命令
winget install ffmpeg
- 重新启动 shell,你就会有 ffmpeg
或者,你可以使用包管理器 Chocolatey:
- 安装 Chocolatey:https://chocolatey.org/install
- 使用管理员权限打开命令提示符
- 运行命令
choco install ffmpeg -y
在 Linux 上安装 ffmpeg
运行命令sudo apt update && sudo apt install ffmpeg
在 MacOS 上安装 ffmpeg
运行命令brew install ffmpeg
答案4
是的,你可以使用网站,正如一些人在回答中推荐的那样,但如果你学会了如何正确操作,你很可能可以在浏览网站、上传文件、排队等待并再次下载的相同时间内自己完成操作。使用网站的缺点是你通常无法控制图标中各个尺寸的尺寸或图像质量。
以下是手动操作方法。您可以使用 GIMP,它是 Photoshop 的开源替代品,可从项目网站下载。无需其他插件。获取要转换的 PNG。其大小至少应为 128 像素,但 256 像素以上会更好。
在 Gimp 中打开上述 png。您将制作一张包含多个图层的图像。完成后,每个图层在完成的图标中的大小都会有所不同。这是我通常使用的图层布局256px(可选)、128px、96px、64px、48px、40px、32px 和 24px。您希望拥有这种尺寸的多样性,因为您需要考虑用户在资源管理器中浏览时将进行的所有不同缩放。 256 有点过分,但为什么不让您的图标经得起未来的考验呢?
步骤 1:将 png 导入 gimp。我通常通过在 Windows 中使用“打开方式”打开 png 并选择 gimp 来执行此操作。之后,Gimp 将完成其余操作。确保它是当前唯一的图层(如果 gimp 制作了任何背景图层,请删除任何背景图层)。
步骤 2:单击图像菜单并选择缩放图像。如果您要使用的图像不是正方形,则必须在缩放之前对其进行裁剪,否则看起来会很奇怪。您可以使用矩形选择工具进行裁剪(确保在选择时按住 shift 进行正方形选择)。选择完成后,单击图像菜单并选择裁剪至选定内容。
步骤 3:选择层菜单并选择复制图层。 点击层再次菜单并选择尺度层并将复制的图层调整为新的大小,如 128 或 96 等。
步骤 4:冲洗并重复,直到您将图层设置为 24px。
步骤 5:通过单击将当前绘图导出为图标文件菜单并选择导出为。当您收到对话框提示时,您要确保输入了正确的扩展名 (.Ico),然后 gimp 将处理其余部分。