QT 推荐一个mac下制作icns图标

发布于:2024-08-14 ⋅ 阅读:(109) ⋅ 点赞:(0)

一.代码

        icns.sh

#!/bin/bash

# 检查参数是否传入
if [ "$#" -ne 1 ]; then
    echo "用法: $0 <图片路径>"
    exit 1
fi

# 检查图片文件是否存在
PIC_FILE=$1
if [ ! -f "$PIC_FILE" ]; then
    echo "图片文件未找到: $PIC_FILE"
    exit 1
fi

# 检查 sips 命令是否存在(在 macOS 中通常可用)
if ! command -v sips &> /dev/null
then
    echo "sips 工具不存在。脚本需要在 macOS 上运行。"
    exit 1
fi

# 检查 iconutil 命令是否存在(在 macOS 中通常可用)
if ! command -v iconutil &> /dev/null
then
    echo "iconutil 工具不存在。脚本需要在 macOS 上运行。"
    exit 1
fi

# 创建临时目录 tmp.iconset
mkdir -p tmp.iconset

# 转换图片到不同的尺寸
sips -z 16 16     "$PIC_FILE" --out tmp.iconset/icon_16x16.png
sips -z 32 32     "$PIC_FILE" --out tmp.iconset/icon_16x16@2x.png
sips -z 32 32     "$PIC_FILE" --out tmp.iconset/icon_32x32.png
sips -z 64 64     "$PIC_FILE" --out tmp.iconset/icon_32x32@2x.png
sips -z 128 128   "$PIC_FILE" --out tmp.iconset/icon_128x128.png
sips -z 256 256   "$PIC_FILE" --out tmp.iconset/icon_128x128@2x.png
sips -z 256 256   "$PIC_FILE" --out tmp.iconset/icon_256x256.png
sips -z 512 512   "$PIC_FILE" --out tmp.iconset/icon_256x256@2x.png
sips -z 512 512   "$PIC_FILE" --out tmp.iconset/icon_512x512.png
sips -z 1024 1024 "$PIC_FILE" --out tmp.iconset/icon_512x512@2x.png

# 创建 icns 文件
iconutil -c icns tmp.iconset -o Icon.icns

# 删除临时目录 tmp.iconset
rm -r tmp.iconset

二.使用

        1.先准备一张1024*1024的png格式的aaa.png图片。

        2.执行脚本:sh icns.sh aaa.png。

        3.当前目录会生成aaa.icns图标。