在多台显示器上使用不同的墙纸(Gnome 2 + Compiz)


42

这似乎是一个简单的问题,但是使用Google或Ask Ubuntu无法找到令人满意的答案。

所以我有一个三显示器设置。基本上,我想要的只是在三台显示器的每台显示器上有不同的背景。现在,我不在这里谈论不同的虚拟桌面(也称为工作空间)。我搜索过的大多数解决方案都是关于不同工作区的不同背景的。我只有一个工作区,但只有三个监视器,如下所示:

在此处输入图片说明

显示器1(在顶部)是我的大电视,它固定在两个常规显示器上方的墙上。

我在Ubuntu 13.04上将Gnome 2与Compiz配合使用(登录管理器下拉列表中又名gnome-session-fallback又名Gnome Classic(具有效果))。

我尝试了以下方法,尝试为每个监视器设置不同的背景:

  1. ccsm(compiz-config-settings-manager),即通过窗口管理器(Compiz)设置背景。更确切地说,我使用了Compiz 的Wallpaper插件。
  2. gnome-control-center,即通过Gnome系统设置设置背景。更确切地说,我在Gnome系统设置中使用了“ 背景”面板。
  3. XDG_CURRENT_DESKTOP=Unity gnome-control-center,即通过Gnome系统设置设置背景,但模仿Unity行为。更准确地说,我在Gnome系统设置中使用了外观面板。

但是,这些方法似乎都无法使我为每个监视器选择不同的背景。在每种情况下,我只能设置一个单一的背景(或可能的几个可随后被周期性地循环,或用于不同的工作区)的所有3个显示器。然后,我通常具有centertilecropscale之类的选项,用于控制如何在三个监视器上呈现单个背景。

解决方法到目前为止,我已经用是用瘸子创建一个“大”的背景下,包括所有三个显示器的整个虚拟分辨率在一起。基本上,我创建了一个大的背景图像,大小为3840x2160,在其中将三个背景粘贴在正确的位置。然后,使用上述可能性(1)或(3)将这个大背景设置为三个显示器的单一背景,并使用span选项将这个大背景跨越所有三个显示器。如果将三个较小的背景正确放置在大背景图像上,这将在三个监视器上产生三个不同的背景(注意:可能性(2)不提供跨度选项)。

但是,要实现这样的简单操作(例如为每个显示器设置不同的背景),这似乎是很糟糕的事情。它还有几个缺点:

  • 当我想更改显示器的排列方式时(顶部的大电视可以向左或向右滑动,并且我想使用xrandr或相关的GUI(例如显示器中的“ 显示”面板)相应地调整显示器的位置。 Gnome系统设置,以便保持鼠标的直观移动),很明显,上部背景不会与应该显示的显示器一起滑动,这意味着我只能看到上部背景的一部分。
  • 大背景在上角有一些灰色区域(死区),在加载大背景时,Compiz或Gnome在登录时无用地加载了这些灰色区域。
  • 最糟糕的是,当我想更改三个背景中的一个时,我必须对整个大背景进行简要编辑。考虑到我只是想更改单个背景(是的,我知道Gimp图层,但是仍然如此),这是太多的工作-只需单击几下,而无需笨拙的图像处理程序,就应该可以实现。

第一点意味着该解决方法不可靠。第二个意思是效率不高。第三个意味着这是一个痛苦的屁股:)

所以我的问题是这样的:

是否有某种方法(使用Gnome 2或Compiz)来简单地告诉系统我希望每个监视器使用不同的背景?这对我来说是合乎逻辑的方法,因为它实际上会告诉系统我的意图是什么。这也将更加有效。

确实,感觉这不可能是一种罕见的情况。我想很多人有多台显示器。并且至少其中一些必须更喜欢在这些监视器上使用不同的背景。因此,没有一个简单的解决方案是真的吗?人们希望用户提出可怕的骇客措施,例如使用重量级程序创建自己的自定义背景,以使其正常工作吗?


这样够好吗?如果不是我。
Rinzwind 2014年

墙纸和背景的含义因问题而异。我将剩下更相关的是gnome和compiz。如果我将gnome更改为kde,答案的类型将完全改变。
Braiam 2014年

1
Braiam,这对我来说没有多大意义。如果出现问题“如何设置桌面背景/墙纸?” 不配标签“ background”或“ wallpaper”,那么哪个问题呢?对于类似的问题,例如askubuntu.com/questions/26529/…askubuntu.com/questions/365913/…,这些标签似乎也不错。但是,那么,您似乎在askubuntu上花费了大量的空闲时间,因此,如果它让您感到快乐……这还不错;)
Malte Skoruppa 2014年

有趣的是XFCE默认行为实际上是OP所需要的,而我却恰恰相反:我想用XFCE来获得OP从gnome中得到的东西。至少在大多数情况下,有一个简单的解决方法:在所有监视器上手动设置背景以引用同一张图片。
斯特凡纳·古里科

Answers:


56

您可以使用 nitrogen

要安装它,请在终端中运行以下命令:

sudo apt-get install nitrogen

由于nitrogen默认情况下在安装时没有桌面文件,因此需要从终端运行以下命令来启动它:

nitrogen

如何使用它?

在“ 首选项”中,添加您的墙纸文件夹,然后在底部选择屏幕1,2等,以为每个显示器设置不同的墙纸:

氮

为了能够为每个监视器设置不同的墙纸,必须禁用文件管理器来处理桌面。这意味着您将不再在桌面上拥有文件夹。

在GNOME / Unity中,安装GNOME Tweak Tool

sudo apt-get install gnome-tweak-tool

然后打开GNOME Tweak工具,在“ 桌面”部分,将“桌面上的图标”(以前由文件管理器处理桌面)设置为OFF

最后,要在每次登录时恢复墙纸,请添加以下命令:

nitrogen --restore

到您的启动应用程序

来源: UBUNTU多显示器TWEAKS(全屏闪光灯修复程序,跨显示器的跨墙纸,更多)


我在Ubuntu 13.10中使用Unity在2个监视器上测试了此方法,效果很好!
RaduRădeanu2014年

伙计们,有两件事:首先,我注意到在登录时设置为氮气的背景不会自动恢复。要实现这一点,我们必须运行nitrogen --restore。因此,为了使更改永久生效,我们必须使用Autostart创建一个在登录时运行此命令的可执行脚本。请通过有关如何执行操作的说明来更新您的答案。
Malte Skoruppa 2014年


1
@MalteSkoruppa您无需创建nitrogen --restore在登录时运行的可执行脚本。只需打开启动应用程序并添加此命令(nitrogen --restore)。对于名称注释,请写任何内容。
RaduRădeanu2014年

10
应该注意的是,此选项现在称为“桌面上的图标”,而不是“让文件管理器处理桌面”
anon58192932,2015年

7

webupd8.org看来,有2个选项。(从网站上复制,再加上我添加的一些其他内容):

默认的Ubuntu Appearance设置不允许您在两台显示器上跨一个大墙纸,也不能为每台显示器使用不同的墙纸,但是您可以使用两个应用程序来执行此操作。

  1. 第一个是SyncWall。使用以下命令在Ubuntu中安装它:

    sudo add-apt-repository ppa:nilarimogard/webupd8
    sudo apt-get update
    sudo apt-get install syncwall
    

    在此处输入图片说明

    使用SyncWall后,我的桌面如下所示:

    在此处输入图片说明

    当前功能

    • 日程安排:您可以在启动时,按间隔或在固定时间更改墙纸
    • 能够使用/定义系统热键来手动更改墙纸。
    • 基本的多显示器支持,以便在屏幕之间共享墙纸
    • 能够向显示的墙纸添加一些特殊效果(浮雕,边缘,模糊等)。
    • 能够对图像进行评级以便更频繁地显示它们(如果选择了随机顺序)
    • 几种调整大小的方法和背景填充
    • 通过定义服务器和客户端,墙纸更改的网络同步。显示参数在网络上共享(在所有台式机上具有相同的调整大小类型)
    • 支持的文件:SyncWall使用Qt插件加载图像,因此默认情况下它可以读取BMP,PNG,JPG等基本格式。如果需要,可以通过将桥插件添加到FreeImage或Devil库中来添加更多格式。
    • 对于linux平台,支持常见的Windows管理器(Gnome,Gnome3,KDE3,KDE4,XFCE等)。
  2. 另一个这样的工具是氮气 安装氮气,该工具除了能够设置相同的墙纸以跨显示器显示之外,还可以用于为每个监视器设置不同的墙纸。

    官方Ubuntu存储库中提供了Nitrogen,因此可以进行安装,在Ubuntu Software Center中搜索或使用以下命令:

     sudo apt-get install nitrogen
    

    Nitrogen没有桌面文件,因此从命令行运行它:

    nitrogen
    

    在此处输入图片说明

    为了能够为每个监视器设置不同的墙纸,必须禁用文件管理器来处理桌面。这意味着您将不再在桌面上拥有文件夹。

    在GNOME / Unity中,安装GNOME Tweak工具:

     sudo apt-get install gnome-tweak-tool
    

    然后打开GNOME Tweak工具,在“桌面”部分,将“让文件管理器处理桌面”设置为OFF。

    最后,要在每次登录时恢复墙纸,请在启动应用程序中添加“ nitrogen --restore”。

    这是我的桌面在每台显示器上都有不同墙纸的样子:

    在此处输入图片说明

    特征 :

    • 多头和Xinerama支持。
    • 调用模式可通过启动脚本还原墙纸。
    • 对缩略图使用freedesktop.org标准。
    • 可以设置GNOME背景。
    • 脚本使用的命令行设置模式。
    • 初始化对浏览目录的监视。
    • 延迟加载缩略图-节省内存(1.3中的新增功能)。
    • “自动”设置模式-确定最佳模式以根据其尺寸设置图像。(1.4中的新功能)。
    • 以平铺的图标布局显示预览图像(1.5中的新增功能)。

    通过软件中心安装


氮气似乎是最好的选择。Syncwall似乎正在使用您所描述的技巧(大图分散在多台显示器上。


2
那里真的有多台显示器吗?看起来像。工作区...
塞思2014年

我刚安装syncwall; 它没有任何选择为每个监视器设置不同的墙纸...
RaduRădeanu2014年

Radu也描述了氮气溶液,效果很好!你们俩都应该得到赏金:)为了确定哪个答案更好,我正在尝试评估Syncwall解决方案的可用性。但是我一直无法使它工作。在“首选项”->“显示参数”中,我看到“扩展图像然后裁剪(每个监视器一个文件)”选项,但是我无法确定如何实际添加多个文件。即使设置了此选项,Syncwall也仅使用一个文件。它的行为与“先扩展图像然后裁剪(所有监视器一个文件)”相同。您能否详细说明如何在Syncwall中添加几个文件?
Malte Skoruppa 2014年

1
@Rinzwind我不明白的一件事:如果syncwall似乎使用问题中描述的技巧,将其添加为答案的原因是什么?问题很明显:多台显示器上的墙纸不同。还有另一件事:如果您要在两台显示器上测试氮气,则不会说最后一张图像是照相制版的;自己尝试一下,使用两台显示器制作一个桌面打印屏幕,您会明白我的意思。
RaduRădeanu2014年

Syncwall似乎可以工作,但不能复制原始问题的屏幕布局。.它不允许我将屏幕堆叠在注释器的顶部,而只是左右:/
bksunday 2014年

6

XFCE Desktop Manager插件(位于xubuntu-desktop软件包中)允许您单独编辑每个显示,同时仍将文件夹保留在桌面上。

经理打开的我的2个桌面的屏幕截图: http://i.stack.imgur.com/Bzg7G.jpg

在黄色框中,显示“将该对话框移至您要为其编辑设置的显示。”

很抱歉,我无法提供更多有关如何安装的指导,也没有提供实际的插件调用的信息(我试图找到它,但决定重新安装整个软件包)-但希望这会导致您或其他人的正确轨道,可以通过编辑来改善此答案。


2

我很高兴看到Gnome / Unity的实际答案。

话虽如此,我仍然觉得切换到KDE可能会提供更一致的体验。

KDE的本机设置管理器不仅允许在多台监视器上使用多个墙纸,而且还可以为每个虚拟桌面AND活动设置不同的墙纸。(活动类似于包含虚拟桌面的虚拟桌面,可以将其配置为具有不同的设置,例如在一项活动中静止5分钟后设置屏幕保护程序,但切换到另一项活动(例如演示或电影)则没有超时。

此外,它可以处理飞行中显示器的添加和减少(通过插入和拔出HDMI)而不会出现问题!


0
sudo apt-get install feh

feh --bg-center <path_to_big_image> --no-xinerama

无需在桌面上隐藏图标


1
欢迎来到Ask Ubuntu!我建议编辑此答案以使用有关此命令作用的特定详细信息将其扩展。普通命令或命令序列很少被视为答案。(另请参阅“我如何编写一个好的答案?”,以获取有关在Ask Ask Ubuntu上认为哪种答案最有价值的一般建议。)
David Foerster,
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.