我见过 .ico 图标具有多种尺寸的不同图像,例如 16x16、32x32、48x48、128x128、256x256。在 Windows 上,鉴于我每个尺寸都有现有的 .ico 文件,我该如何以这种方式创建支持多种尺寸的图标文件?请注意,我希望对 200 多个文件执行此操作,因此从 cmd 执行此操作是理想的。
答案1
图像魔术师(Windows/Mac/Linux)包含一个名为的命令行工具convert
它可用于许多用途,包括将多幅图像打包成一个图标:
magick convert 16.png 32.png 48.png 128.png 256.png -colors 256 icon.ico
上述命令获取 5 张 PNG 图像,并将它们合并为一个 .ico 文件。
与其他答案不同,这种方法可以容易地可用于批处理脚本,自动生成多个图标文件。在我的一个项目中,我有一个矢量图像 (SVG),并使用Inkscape生成各种尺寸的 png,然后convert
创建图标容器。这是一个简化的示例(在 bash 脚本中):
#!/bin/bash
for size in 16 32 48 128 256; do
inkscape -z -e $size.png -w $size -h $size icon.svg >/dev/null 2>/dev/null
done
convert 16.png 32.png 48.png 128.png 256.png -colors 256 icon.ico
答案2
ImageMagick 的更好命令:
convert in.jpg -define icon:auto-resize=16,48,256 -compress zip out.ico
答案3
答案4
你可以试试 Matthias Benkmann 的png转ico。它是免费的,并且可以将多种尺寸的 png 打包成一个 ico 文件。