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

Mal*_*ppa 51 gnome compiz gnome-classic

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

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

在此处输入图片说明

显示器 1(顶部)是我的大电视,它连接到我的两个普通显示器上方的墙上。

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

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

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

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

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

然而,这似乎是一个可怕的黑客来实现这样一个简单的事情,例如为我的每个显示器设置不同的背景。它也有几个缺点:

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

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

所以我的问题是:

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

真的,感觉这不可能是一个罕见的场景。我认为很多人都有多个显示器;至少其中一些人必须更喜欢在这些显示器上拥有不同的背景。那么是否真的没有直接的解决方案,并且用户会想出一些可怕的技巧,例如使用重量级程序创建自己的自定义背景以使其正常工作?

Rad*_*anu 61

编辑(2019 年):不再维护氮气。Nitrogen 在较新的 Ubuntu 发行版上不能完全工作。

您可以使用 nitrogen

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

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

因为nitrogen安装时默认没有桌面文件,所以需要从终端运行以下命令来启动它:

nitrogen
Run Code Online (Sandbox Code Playgroud)

如何使用它?

在它的Preferences 中,添加您的墙纸文件夹,然后在底部 [...] 选择 Screen 1、2 等,为每个显示器设置不同的墙纸:

氮

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

在 GNOME / Unity 中,安装GNOME Tweak Tool

sudo apt-get install gnome-tweak-tool
Run Code Online (Sandbox Code Playgroud)

然后打开 GNOME Tweak Tool 并在桌面部分,将桌面上的图标(以前让文件管理器处理桌面)设置为OFF

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

nitrogen --restore
Run Code Online (Sandbox Code Playgroud)

到您的启动应用程序

来源: UBUNTU MULTI-MONITOR TWEAKS(全屏闪光灯修复,跨显示器的跨度壁纸,更多)

  • 应该注意的是,此选项现在称为“桌面图标”而不是“让文件管理器处理桌面” (10认同)

Rin*_*ind 8

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

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

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

    sudo add-apt-repository ppa:nilarimogard/webupd8
    sudo apt-get update
    sudo apt-get install syncwall
    
    Run Code Online (Sandbox Code Playgroud)

    在此处输入图片说明

    以下是使用 SyncWall 后我的桌面的外观:

    在此处输入图片说明

    当前功能

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

    Nitrogen 在官方 Ubuntu 存储库中可用,因此要安装它,在 Ubuntu 软件中心搜索它或使用以下命令:

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

    Nitrogen 没有桌面文件,所以从命令行运行它:

    nitrogen
    
    Run Code Online (Sandbox Code Playgroud)

    在此处输入图片说明

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

    在 GNOME / Unity 中,安装 GNOME Tweak Tool:

     sudo apt-get install gnome-tweak-tool
    
    Run Code Online (Sandbox Code Playgroud)

    然后打开 GNOME Tweak Tool 并在“桌面”部分,将“让文件管理器处理桌面”设置为关闭。

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

    这是我的桌面在每台显示器上使用不同壁纸的样子:

    在此处输入图片说明

    特征 :

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

    通过软件中心安装


氮气似乎是最好的选择。Syncwall 似乎正在使用您描述的 hack(将大图像拆分到多个显示器上。

  • 你那里真的有多个显示器吗?看起来像。工作区... (2认同)

Ula*_*ach 6

XFCE 桌面管理器插件(包含在 xubuntu-desktop 包中)允许您单独编辑每个显示,同时仍保留桌面上的文件夹。

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

在黄色框中,它显示“将此对话框移动到要编辑设置的显示器”。

很抱歉,我无法提供有关如何安装它的说明以及实际插件的名称(我试图找到它但决定重新安装整个软件包)的更多帮助-但希望这会导致您或走在正确轨道上的人,可以通过编辑改进此答案。