多台显示器上的不同壁纸

byf*_*rdy 17 gnome wallpaper multiple-monitors 14.04

我有一台笔记本电脑和一台显示器。大多数情况下,我的笔记本电脑通过 HDMI 连接到显示器。我使用 Ubuntu Gnome 14.04,这是我想要的:

  • 当没有连接显示器时,我想要一个简单的背景图像
  • 连接显示器后,我希望在我的笔记本电脑上有相同的背景图像,在我的显示器上有另一个背景图像。

那可能吗?我发现这个问题以及。但两者都没有帮助我。

编辑:

运行 gnome-tweak-tool 后,转到左侧面板中的“桌面”选项卡,然后关闭设置“让文件管理器处理桌面”。

来源:Ubuntu 论坛

不幸的是,我无法在我的 Gnome-Tweak-Tool 中找到它: gnome-调整工具

我试图使用dconf-editorunder找到相同的配置,org.gnome.desktop.background但它所说的只是:

摘要:绘制桌面背景
说明:让GNOME 绘制桌面背景。已弃用:此键已弃用并被忽略。

我的gnome-shell --version也是GNOME Shell 3.10.4

在这个要点中xrandr. 第一个是连接第二个显示器。第二个是没有它。

Jac*_*ijm 10

诀窍

主屏和副屏分别设置壁纸似乎是不可能的。什么可以但是做的是设置壁纸,并且有它跨越了两个屏幕。我们可以自动创建您选择的两个壁纸的跨越图像,并(也自动)切换壁纸和图片选项,具体取决于第二个屏幕是否已连接。
为了让它看起来漂亮,至少两个屏幕的垂直屏幕分辨率是相同的,这就是你的情况。

在此处输入图片说明

在实践中

准备

在这个解决方案中,你要做的准备工作是:

  • 首先,安装 imagemagick 以自动创建跨越图像:

    sudo apt-get install imagemagick
    
    Run Code Online (Sandbox Code Playgroud)
  • 为两个屏幕准备两个您选择的单独背景图像:

    • 尺寸应与屏幕尺寸完全匹配(在您的情况下为 16:9)
    • 两个图像的垂直分辨率应该完全相同。

    称呼他们screen_1.jpegscreen_2.jpeg(正是这些名字)。脚本将创建跨越图像。

  • 在您的主目录中创建一个文件夹并将两个图像复制到该文件夹​​中。

  • 将下面的脚本复制到一个空文件中auto_wall.py,并与您准备的两个图像一起保存为。

  • 在脚本的 head 部分,有一行:

    screen_check = "HDMI-0 connected"
    
    Run Code Online (Sandbox Code Playgroud)

    如有必要,替换HDMI-0<your_second_screenname>(如有必要,请运行命令xrandr以查找)

通过以下命令运行脚本(并使其在后台运行):

python3 /path/to/auto_wall.py
Run Code Online (Sandbox Code Playgroud)

现在,如果您连接第二个屏幕,第二个屏幕上的壁纸应该会在几秒钟内切换到screen_2.jpeg您准备好的状态。

  • 如果一切正常,请将其添加到您的启动应用程序中。

剧本

sudo apt-get install imagemagick
Run Code Online (Sandbox Code Playgroud)

替换图像

如果您想更改墙纸,只需替换您复制到文件夹中的一张或两张图片(但请注意名称)并删除span_image.jpeg由脚本创建的 , 。

我在 Ubuntu 14.04 和 14.10 上对其进行了测试,效果很好。您使用 Gnome 的事实不应该有什么不同。

使用组合键手动切换壁纸设置

如果出于某种原因,您希望在连接/断开外接显示器后手动切换到跨屏壁纸,您可以替换最后三行:

screen_check = "HDMI-0 connected"
Run Code Online (Sandbox Code Playgroud)

单行:

python3 /path/to/auto_wall.py
Run Code Online (Sandbox Code Playgroud)

并添加一个键盘快捷键来进行切换:“系统设置”>“键盘”>“快捷方式”>“自定义快捷方式”

添加命令:

python3 /path/to/auto_wall.py
Run Code Online (Sandbox Code Playgroud)

到您选择的组合键。