快捷方式里面大部分都是这种不带路径的Icon,带路径的可以
绝对路径
如果 Icon 字段包含一个绝对路径(例如 /usr/share/icons/hicolor/48x48/apps/app-icon.png),桌面环境会直接尝试加载该路径的图标文件。
如果路径不存在或者文件无效,则继续下面。
不带后缀的图标名称
如果 Icon 字段仅指定了一个名称(例如 app-icon),桌面环境会在标准的图标搜索路径中查找对应的图标文件,这些路径包括用户本地目录(~/.icons/)、系统共享目录(/usr/share/icons/)以及其他指定的主题目录。
查找时,会尝试不同的图标后缀(如 .png、.svg、.xpm 等)。
图标主题
桌面环境会根据当前使用的图标主题(通常由用户设置)来搜索图标。以下是图标搜索的标准路径:
用户的本地图标目录:~/.icons/<主题名>
系统的共享图标目录:/usr/share/icons/<主题名>
在每个主题目录中,会根据图标的大小和类别(如 apps/、actions/ 等)寻找匹配的文件。
继承的图标主题
如果当前主题没有找到指定的图标,桌面环境会查找该主题声明的继承主题(index.theme 文件中的 Inherits 字段),然后在继承主题中继续搜索。
默认图标主题
如果指定主题及其继承主题中都未找到图标,系统会使用默认的图标主题(通常是 hicolor)。
默认主题路径:/usr/share/icons/hicolor/。
备选路径
如果默认主题也没有找到图标,系统可能会检查 /usr/share/pixmaps/ 目录。该目录通常用于存放不遵循图标主题的图标文件。
-
看 *.desktop 里面, icon 这行,后面的图标文件名。比如 dde-printer
-
查询图标(适用于所有 deb 格式 的 Linux 系统)
dpkg -S dde-printer
Popular Events
More
不同的桌面主题拥有同一个图标名称,无法区分哪个是桌面当前显示的图标
使用QT 的QIcon::fromTheme() 在不同的路径下执行任务,获取到的是不同的图标主题,我需要在系统路径下去获取桌面的图标主题,强行设置bloom主题的话,QIcon::fromTheme()获取不到图片信息,这是为什么,有没有别的方法或者命令能直接找到icon路径