MAC系统QT图标踩坑记录

MAC系统QT图标踩坑记录

    • [1. 准备图标](#1. 准备图标)
      • [1.1 方法一:下载准备好的图标](#1.1 方法一:下载准备好的图标)
      • [1.2 方法二:自己生成图标](#1.2 方法二:自己生成图标)
        • [1.2.1 准备一个png文件](#1.2.1 准备一个png文件)
        • [1.2.2 用`sips`生成不同大小的图片](#1.2.2 用sips生成不同大小的图片)
        • [1.2.3 用`iconutil`生成图标文件](#1.2.3 用iconutil生成图标文件)
    • [2. 配置图标](#2. 配置图标)
        • [2.1. 把图标改命成自己想要的名字,如`icon.icns`,放到项目的根目录](#2.1. 把图标改命成自己想要的名字,如icon.icns,放到项目的根目录)
        • [2.2. qmake的配置文件增加配置`ICON = icon.icns`](#2.2. qmake的配置文件增加配置ICON = icon.icns)
        • [2.3. 编译运行:踩坑点***`一定要删除之前构建`***](#2.3. 编译运行:踩坑点***一定要删除之前构建***)
        • [2.4. 查看编译的结果](#2.4. 查看编译的结果)
        • [2.5. 包内容查看,其实就是`Info.list`文件里的`CFBundleIconFile`](#2.5. 包内容查看,其实就是Info.list文件里的CFBundleIconFile)

想给QT创建的程序弄一个自定义的图标,结果踩了好几个坑,这里记录一下。
官方的文档: https://doc.qt.io/qt-6/appicon.html#setting-the-application-icon-on-macos按照官方文档一遍就成功就怪了。

1. 准备图标

1.1 方法一:下载准备好的图标

https://www.iconfinder.com/search?q=camera下载一个macos格式的图标

1.2 方法二:自己生成图标

1.2.1 准备一个png文件
1.2.2 用sips生成不同大小的图片
shell 复制代码
sips -z 16 16     logo.png --out icons.iconset/icon_16x16.png
sips -z 32 32     logo.png --out icons.iconset/icon_16x16@2x.png
sips -z 32 32     logo.png --out icons.iconset/icon_32x32.png
sips -z 64 64     logo.png --out icons.iconset/icon_32x32@2x.png
sips -z 128 128   logo.png --out icons.iconset/icon_128x128.png
sips -z 256 256   logo.png --out icons.iconset/icon_128x128@2x.png
sips -z 256 256   logo.png --out icons.iconset/icon_256x256.png
sips -z 512 512   logo.png --out icons.iconset/icon_256x256@2x.png
sips -z 512 512   logo.png --out icons.iconset/icon_512x512.png
sips -z 1024 1024 logo.png --out icons.iconset/icon_512x512@2x.png
1.2.3 用iconutil生成图标文件
shell 复制代码
iconutil -c icns icons.iconset -o icon.icns

2. 配置图标

2.1. 把图标改命成自己想要的名字,如icon.icns,放到项目的根目录
2.2. qmake的配置文件增加配置ICON = icon.icns
2.3. 编译运行:踩坑点***一定要删除之前构建***

哈哈😂,变成自己的图标了。。。。

2.4. 查看编译的结果
2.5. 包内容查看,其实就是Info.list文件里的CFBundleIconFile
相关推荐
关关钧6 分钟前
【R语言】读取CSV数据时,显示[1] PK...<0 行> (或0-长度的row.names)
开发语言·r语言
以卿a1 小时前
C++ 模板初阶
开发语言·c++
s:1031 小时前
【框架】参考 Spring Security 安全框架设计出,轻量化高可扩展的身份认证与授权架构
java·开发语言
道不尽世间的沧桑2 小时前
第17篇:网络请求与Axios集成
开发语言·前端·javascript
久绊A2 小时前
Python 基本语法的详细解释
开发语言·windows·python
软件黑马王子6 小时前
C#初级教程(4)——流程控制:从基础到实践
开发语言·c#
cpp_learners6 小时前
QT 引入Quazip和Zlib源码工程到项目中,无需编译成库,跨平台,压缩进度
qt·zlib·加密压缩·quazip
闲猫6 小时前
go orm GORM
开发语言·后端·golang
李白同学7 小时前
【C语言】结构体内存对齐问题
c语言·开发语言
黑子哥呢?8 小时前
安装Bash completion解决tab不能补全问题
开发语言·bash