使用SVG
文件作为函数设置的PyGTK
窗口的图标时:
set_icon_from_file("icon.svg")
,
当从Ubuntu 11.10中的Alt-Tab视图和Unity Launcher栏查看时,图标看起来很模糊。
有没有一种简单的方法可以防止图标变得模糊并保持其正常质量?
Unity和Gnome3只有在合适的.desktop文件(例如~/.local/share/applications/
)中定义图标并以此启动应用程序时,才会以全分辨率显示图标。在那里,您可以提供您的SVG文件,它将以全分辨率使用。
如果你想确保桌面环境以任何方式找到正确的图标,那么你应该确保设置正确的WM_CLASS,比如gtk.gdk.set_program_class("my_app")
。然后调用你的.desktop文件my_app.desktop
。
哦,你应该在set_icon_from_file()
之前调用gtk.gdk.set_program_class()
,否则你仍然会有糟糕的低分辨率图像。只有当您还在Windows上运行应用程序时,才需要后者,因为Windows不知道.desktop文件。