Kew*_*hah 7 customization scripts unity widgets software-recommendation
请建议我使用任何图像的方法,例如可重新调整大小的便签,以便我在打开 Unity 桌面时可以查看它。
我希望它像Android 上可用的主屏幕照片小部件应用程序一样使用。这样即使在重新启动我的系统后,图像也会保持在它之前定位的位置,就像一个便签一样。
我想要的如下图所示:
在上图中,我将图像放在桌面上,并将图像图标调整为最大尺寸,但这并不能解决我的问题,因为:
我无法进一步放大图像,因为这是调整图标大小的最大尺寸。
当我将鼠标悬停在图标上时,图像会突出显示,这是我不想要的图标的情况
即使使用最大图标尺寸,图像质量也会因为图像失真而变得非常差。
我希望图像可以轻松地重新调整大小和重新定位,而不会出现上述任何缺点。
我希望我现在清楚我的问题。如果在理解我想要的方面仍有任何问题,请告诉我。
(Ubuntu 16.04)
窗户可以是不同的类型。我们不仅有“普通”窗口,还有(在我们的例子中)类型为“桌面”的窗口。
“桌面”类型的窗户低于一切;甚至桌面上的所有项目都显示在它们上方。因此,在窗口中显示图像会导致:
...固定在桌面上的sundew图像实际上是一个窗口(就像图像中的桌面时钟一样)。
#!/usr/bin/env python3
import gi
gi.require_version('GdkPixbuf', '2.0')
from gi.repository import GdkPixbuf
gi.require_version("Gtk", "3.0")
from gi.repository import Gtk, Gdk
import sys
img = sys.argv[1]
xpos = int(sys.argv[2])
ypos = int(sys.argv[3])
w = int(sys.argv[4])
h = int(sys.argv[5])
class ShowPortrait(Gtk.Window):
def __init__(self):
Gtk.Window.__init__(self, title="PortraitonMyDesktop")
self.set_type_hint(Gdk.WindowTypeHint.DESKTOP)
self.connect("destroy", Gtk.main_quit)
self.set_skip_taskbar_hint(True)
pixbuf = GdkPixbuf.Pixbuf.new_from_file_at_scale(
img, w, h, preserve_aspect_ratio=True,
)
image = Gtk.Image.new_from_pixbuf(pixbuf)
self.add(image)
self.move(xpos, ypos)
self.show_all()
ShowPortrait()
Gtk.main()
Run Code Online (Sandbox Code Playgroud)
showportrait.py使用图像、x 位置、y 位置、宽度和高度作为参数测试运行它:
python3 /path/to/showportrait.py /path/to/image x y width height
Run Code Online (Sandbox Code Playgroud)
例如:
python3 '/home/jacob/Desktop/showportrait.py' '/home/jacob/Thema/Wallpapers/sundew.jpg' 1000 200 400 400
Run Code Online (Sandbox Code Playgroud)
该图像应显示在您的桌面上。
如果一切正常,请将命令添加到启动应用程序。
通过以下命令最容易完成:
kill "$(pgrep -f showportrait.py)"
Run Code Online (Sandbox Code Playgroud)
设置宽度/高度,脚本将缩放图像直到达到第一个,保留图像的比例。