我应该在应用程序的 .desktop 文件中提供(和引用)什么尺寸的图标?我正在使用 Sublime Text 2,它提供最大 256 像素见方的 .PNG,但默认情况下在其 .desktop 文件中引用 48x48,这在侧边栏/dock/thing 中没有问题,但在较大的 alt-tab 应用程序切换视图上看起来缩放效果很差。
Icon=/opt/Sublime Text 2/Icon/48x48/sublime_text.png
如果我只是引用较大的文件,有什么问题吗?
我还注意到一些现有的 .desktop 文件似乎没有引用文件,而只是一个名称 - 它是如何工作的?(例如 chromium-browser.desktop 只有没有路径或文件扩展名的值:
Icon=chromium-browser
答案1
.desktop
引用文件中的图标
您可以简单地将完整路径放在文件中,或者将图标路径放在默认图标目录中(如下所述)
为图标添加多种分辨率
您可以将自己的图标放在以下文件夹之一中,以使其具有多种分辨率:
<RESOLUTION>
用图标的分辨率(48x48
格式)替换,<NAME>
用您想要引用的唯一名称替换,.png
用图标的扩展名替换(如果它有不同的扩展名)。
仅适用于当前用户:
~/.local/share/icons/hicolor/<RESOLUTION>/apps/<NAME>.png
对于系统上的所有用户:
/usr/share/icons/hicolor/<RESOLUTION>/apps/<NAME>.png
要在文件中引用此图标.desktop
,您只需使用<NAME>
它的图标,而无需扩展名。
笔记:
图标必须为 PNG、XPM 或 SVG 格式,并具有正确的文件扩展名
(.png、.xpm 或 .svg)。如果图标是
.svg
(可缩放矢量图形)文件,您可以在上面的任一路径中使用scalable
它。<RESOLUTION>
参考:
查找没有完整路径的图标
chromium-browser
(例如,使用它来定位 的图标)
#!/usr/bin/env python3
from gi.repository import Gtk
icon_name = input("Icon name (case sensitive): ")
if icon_name:
theme = Gtk.IconTheme.get_default()
found_icons = set()
for res in range(0, 512, 2):
icon = theme.lookup_icon(icon_name, res, 0)
if icon:
found_icons.add(icon.get_filename())
print("\n".join(found_icons))
将以上内容保存到文件中并使用 运行python3 /path/to/file
。
参考: