it-swarm.cn

如何创建桌面壁纸幻灯片?

如何使用我自己的图像集创建桌面壁纸幻灯片?

  • 使用来自图片文件夹的图像,或预先选择的图像
  • 随着图像顺序显示或随机显示
  • 随着图像每隔几分钟或随机时间段后变化
194
David Siegel

适用于11.04及之前的版本

有一个用于创建名为CREBS的壁纸幻灯片的程序。看看这篇文章: http://www.omgubuntu.co.uk/2010/05/crebs-the-ultimate-wallpaper-slideshow-application

这里有一个功能较少但更易于使用的更简单的应用程序: http://gnome-look.org/content/show.php/Wallpaper+Slideshow?content=125178

alt text

58
snostorm

如果您使用它来管理您的照片并且喜欢它,我建议使用Shotwell,默认情况下应该安装它。

打开它:

open shotwell

选择要设置为背景幻灯片的照片:

select images

打开FileSet as Desktop Slideshow或按 Ctrl+B

set as slideshow

调整时间设置:

set time

完成。

252
Jakob

Wallch

在软件中心有两个壁纸更换器 - wallch用于Gnome-Shell/Unity/Gnome-Classic和Wally用于KUbuntu。

让我们专注于Wallch

可悲的是Wallch在软件中心的版本已经过时,并且有很多问题,尤其是14.04!有一个包含最新版本的存储库。

要安装,请添加存储库(您不需要在16.04上执行此操作):

Sudo add-apt-repository ppa:wallch/wallch-daily

然后安装Wallch:

Sudo apt-get update && Sudo apt-get install wallch

然后从Dash开始:

enter image description here

让我们现在启动应用程序首选项:

enter image description here

让我们解开泡泡通知 - 它很烦人 - 同时你可以禁用声音!

enter image description here

同时您可以定义启动选项:

enter image description here

保存 - 并添加图片文件夹 - 在此示例中,使用/usr/share/backgrounds作为Ubuntu附带的默认壁纸

enter image description here

现在我们有两个选择:

启动选择1

(感谢@Naruto)

在启动器中保持wallch

enter image description here

退出墙壁并开始更换壁纸

enter image description here

启动选择2

登录时启动wallch,无需启动器

从短划线:

enter image description here

然后使用命令wallch --constant创建一个新的启动应用程序

enter image description here

注: - 对于某些计算机,这将无法正常工作。解决方案是根据以下问答引入wallch守护程序启动的延迟:

Wallch在登录时没有自动循环背景

86
fossfreedom

IMG:  品种

主页:http://peterlevi.com/variety
Github :https://github.com/varietywalls/variety

Variety是Linux系统的壁纸管理器。它支持众多桌面和壁纸源,包括本地文件和在线服务:Flickr,Wallhaven,Unsplash等。

在支持的地方,Variety作为托盘图标,以便轻松暂停和恢复。否则,其桌面输入菜单提供了一组类似的选项。

Variety还包括一系列图像效果,如油画和模糊,以及层叠引号和背景时钟的选项。

enter image description here

安装

它可以在Universe回购中找到。要安装它,请运行

Sudo apt install variety

你也可以通过运行从 Peter Levi的PPA 安装它

Sudo add-apt-repository ppa:peterlevi/ppa
Sudo apt-get update
Sudo apt-get install variety
48
Iftekhar Ahmed Shafi

自己创建一个XML文件。请谨慎使用此脚本作为起点,它可能会有一些错误。

#!/bin/bash

FILE="background.xml"
DURATION=10.0
TRANSITION=0.0

CURRENTDIR=$PWD
TRANSITION_XML="
<static>
    <duration>$DURATION</duration>
    <file>$CURRENTDIR/%s</file>
</static>
<transition>
    <duration>$TRANSITION</duration>
    <from>$CURRENTDIR/%s</from>
    <to>$CURRENTDIR/%s</to>
</transition>
"

# Random order
shopt -s nullgob nocaseglob        # ignore non-existant extensions, case-insensitve
IMGS=( *.{jpg,jpeg,png,gif} )
INDICES=( $(shuf -e ${!IMGS[@]}) ) # randomize indices of images
INDICES+=(${INDICES[0]})           # go back to first image after last
COUNTER=${#IMGS[@]}

exec > "$FILE"                     # all further output to the XML file
echo "<background><starttime></starttime>"

for ((i = 0; i < COUNTER; i++))
do
    index=${INDICES[i]}
    printf "$TRANSITION_XML" "${IMGS[index]}" "${IMGS[index]}" "${IMGS[index + 1]}"
done

echo "</background>"

说明:

生成background.xml文件后,右键单击桌面,选择更改背景图像,单击添加 ...,然后导航到包含XML文件的目录。在“打开”按钮上方将选择器从“图像”更改为“所有文件”,然后选择background.xml文件并单击“打开”按钮。该文件可以重命名为更具描述性,例如my_family.xmllandscapes-3.xml等,允许一个人拥有多个幻灯片播放列表。

25
borjacampina

对于gnome 3,使用前面的一个答案生成xml,然后你可以通过命令行添加生成的xml:

gsettings set org.gnome.desktop.background picture-uri 'file:///home/pykler/.backgrounds/realtime/background.xml'

另一个解决方案(这会将你的bg添加到gnome-control-center下的Appearance区域):

mkdir -p ~/.local/share/gnome-background-properties/

cat >~/.local/share/gnome-background-properties/custom-wallpapers.xml <<EOF
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE wallpapers SYSTEM "gnome-wp-list.dtd">
<wallpapers>
  <wallpaper deleted="false">
    <name>Pykler</name>
    <filename>/home/pykler/.backgrounds/realtime/background.xml</filename>
    <options>zoom</options>
  </wallpaper>
 </wallpapers>
EOF

根据需要替换名称“Pykler”和路径“/home/pykler/.backgrounds/realtime/background.xml”。

8
Pykler

对于Gnome 3,您可以使用Wallpaper Slideshow App。

Wallpaper Slideshow App screenshot

根据其开发人员的说法,它具有以下功能:

  • 允许您通过浏览器选择文件夹。
  • 允许您以秒为单位设置超时。
  • 让您选择子目录的深度。
  • 您只需单击一下即可启用或禁用它。
  • 全功能工具提示

去下载:

git clone git://gitorious.org/gnome-3-wp/gnome-3-wp.git

然后在主文件夹的gnome-3-wp文件夹中运行wp-show

有关更多信息,请参阅 此处此处

6
Mandy

使用cortina,效果很好。

它可以将桌面背景图片设置为从给定目录设置随机文件。

它可以通过Ubuntu软件中心安装。

Install via the software center

4
Madhava

好的,我是这样做的,这可能不是最好的方法,但它工作,我没有必要安装任何东西来做到这一点。回到11.10,我找到了下面的python脚本(slideshow.py),它生成一个slideshow.xml文件(从包含图像的目录运行)。这仍然是12.04中所需的文件,但您还需要另一个XML文件。将slideshow.py脚本生成的XML文件/usr/share/backgrounds/contestchown放入root。完成后,您需要运行第二个python脚本(wallpapers.py),该脚本是从第一个开始改编的。将wallpapers.py生成的文件放在/usr/share/gnome-background-properties中,然后再将chown放入root用户。此时,您应该可以进入“系统设置” - >外观并选择幻灯片或其中的任何图片。

slideshow.py:

#!/usr/bin/env python
#coding=utf-8
# slideshow.py
import glob, os
import shutil
import time
import Image

filelist=[]
def filelie(path):
    if os.path.isfile(path):
       wenjian=os.path.splitext(path)[1][1:]
       if wenjian=="jpg" or wenjian=="png" or wenjian=="gif":
        try:
          kuan,gao = Image.open(path).size
          if kuan>=1024 and gao>=768:
            filelist.append(path)
        except IOError:
         pass
    Elif os.path.isdir(path):
        for item in os.listdir(path):
            itemsrc = os.path.join(path, item)
            filelie(itemsrc)

curdir = os.getcwd()
filelie(curdir)
currentImageFiles = filelist
#print filelist
if os.path.isfile('slideshow.xml'):
 os.remove('slideshow.xml')


currentTime = time.localtime()
length = len(currentImageFiles)

f = file('slideshow.xml', 'w')

f.write('<background>\n')
f.write('\t<starttime>\n')
f.write('\t\t<year>' + str(currentTime.tm_year) + '</year>\n')
f.write('\t\t<month>' + str(currentTime.tm_mon) + '</month>\n')
f.write('\t\t<day>' + str(currentTime.tm_mday) + '</day>\n')
f.write('\t\t<hour>' + str(currentTime.tm_hour) + '</hour>\n')
f.write('\t\t<minute>' + str(currentTime.tm_min) + '</minute>\n')
f.write('\t\t<second>' + str(currentTime.tm_sec) + '</second>\n')
f.write('\t</starttime>\n')
f.write('<!--This animation will start at the time it created-->\n')

for i in currentImageFiles:
 length = length - 1
 f.write('\t<static>\n')
 f.write('\t\t<duration>96.0</duration>\n')
 f.write('\t\t<file>' + currentImageFiles[length] +'</file>\n')
 f.write('\t</static>\n')
 f.write('\t<transition>\n')
 f.write('\t\t<duration>3.0</duration>\n')
 f.write('\t\t<from>' + currentImageFiles[length] + '</from>\n')
 if length >= 1:
  f.write('\t\t<to>' + currentImageFiles[length-1] + '</to>\n')
 if length <1:
  f.write('\t\t<to>' + currentImageFiles[len(currentImageFiles)-1] + '</to>\n')
 f.write('\t</transition>\n')

f.write('</background>\n')
f.close()

wallpapers.py:

#!/usr/bin/env python
#coding=utf-8
import glob, os
import shutil
import time
import Image

filelist=[]
def filelie(path):
    if os.path.isfile(path):
       wenjian=os.path.splitext(path)[1][1:]
       if wenjian=="jpg" or wenjian=="png" or wenjian=="gif":
        try:
          kuan,gao = Image.open(path).size
          if kuan>=1024 and gao>=768:
            filelist.append(path)
        except IOError:
         pass
    Elif os.path.isdir(path):
        for item in os.listdir(path):
            itemsrc = os.path.join(path, item)
            filelie(itemsrc)

curdir = os.getcwd()
filelie(curdir)
currentImageFiles = filelist
#print filelist
if os.path.isfile('mywallpapers.xml'):
 os.remove('mywallpapers.xml')


currentTime = time.localtime()
length = len(currentImageFiles)

f = file('mywallpapers.xml', 'w')

f.write('<?xml version="1.0" encoding="UTF-8"?>\n')
f.write('<!DOCTYPE wallpapers SYSTEM "gnome-wp-list.dtd">\n')
f.write('<wallpapers>\n')
f.write('\t<wallpaper deleted="false">\n')
f.write('\t\t<name>My custom Wallpapers</name>\n')
f.write('\t\t<filename>/usr/share/backgrounds/contest/slideshow.xml</filename>\n')
f.write('\t\t<options>zoom</options>\n')
f.write('\t</wallpaper>\n')

for i in currentImageFiles:
 length = length - 1
 f.write('\t<wallpaper>\n')
 f.write('\t\t<name>' + os.path.basename(currentImageFiles[length]) +'</name>\n')
 f.write('\t\t<filename>' + currentImageFiles[length] +'</filename>\n')
 f.write('\t\t<options>zoom</options>\n')
 f.write('\t\t<pcolor>#000000</pcolor>\n')
 f.write('\t\t<scolor>#000000</scolor>\n')
 f.write('\t\t<shade_type>solid</shade_type>\n')
 f.write('\t</wallpaper>\n')

f.write('</wallpapers>\n')
f.close()
4
Jet

在系统设置下从外观更改它,如下所示

enter image description here

或者你可以通过安装Desktop Nova来实现。要安装,只需按 Ctrl+Alt+T 在键盘上打开终端。打开时,运行以下命令:

Sudo apt-get install desktopnova desktopnova-tray desktopnova-module-gnome

安装完成后,在Dash中搜索它,然后单击它,当程序打开时,添加图像并设置时间间隔。

enter image description here

enter image description here

enter image description here

命令补充 Desktopnova

3
Mitch

您可能对自动创建此类壁纸幻灯片的程序感兴趣。

根据 这个OMG!Ubuntu帖子 ,你有例如 '壁纸画廊' 。它将来自Shotwell画廊的输入数据标记为照片。因此,例如添加和删除照片变得非常容易。

首先选择有关要显示的照片的标签,然后根据需要配置切换时间,顺序等。这里有一些截图:

Wallpaper Gallery display optionsWallpaper Gallery data source

3
Agmenor

我希望更改壁纸和自定义壁纸图片显示在Ubuntu 12.04中选择壁纸的默认选项下,所以我做了以下

使用终端导航到:

/usr/share/gnome-background-properties

输入ls将列出该文件夹中的所有文件,你应该看到一个名为precise-wallpapers.xml的文件,如果出现问题则备份它

Sudo cp ./precise-wallpapers.xml ~

然后编辑它以添加要在默认壁纸选项中显示的壁纸

Sudo gedit precise-wallpapers.xml

这就是我添加一个polarbears壁纸的方式,之前我复制了位于比赛文件夹中的precise.xml,并用我想要显示的图片进行了编辑:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE wallpapers SYSTEM "gnome-wp-list.dtd">
<wallpapers>
  <wallpaper deleted="false">
    <name>Ubuntu 12.04 Community Wallpapers</name>
    <filename>/usr/share/backgrounds/contest/precise.xml</filename>
    <options>zoom</options>
  </wallpaper>
  <wallpaper>
    <name>polarbears</name>
    <filename>/usr/share/backgrounds/polarbears/polarbears.xml</filename>
    <options>zoom</options>
  </wallpaper>
  <wallpaper>
    <name>Delicate Petals</name>
    <filename>/usr/share/backgrounds/Delicate_Petals_by_lefthandgergo.jpg</filename>
    <options>zoom</options>
    <pcolor>#000000</pcolor>
    <scolor>#000000</scolor>
    <shade_type>solid</shade_type>
  </wallpaper>
  <wallpaper>

你可以添加常规的jpg或png文件,我建议将它们复制到/ usr/share/backgrounds然后将它们添加到这个xml文件中。我希望这有帮助。

3
Joe

是的你可以。

找到已制作的动画壁纸并进行修改。

例如,/usr/share/backgrounds/contest中应该有一个(至少在Precise Pangolin上)。

在我的情况下,该文件名为precise.xml,它是一个XML文件。您需要知道的任何修改它是任何tag<background>包含其他标签和文本,必须用</background>关闭。

试着找出这些标签的含义(见下文),更改这些图片的名称和另存为...某处。称之为whatever_you_want.xml

然后改变你的背景:通过浏览你的计算机选择一个新壁纸,而不是选择。jpg,选择你的的.xml

一些标签:

<background>包含所有内容。您的文件必须以它开头并以</background>结尾。它被称为根标签。
<starttime>定义了diaporama何时开始。必须给出确切的日期,任何日期。
<static>包含静止图像的定义。
<transition>用于从一个图像淡入另一个图像。
<duration>以秒为单位给出显示图片的时间或淡入淡出时间。
<file>包含要显示为静止的单个图像。
<from><to>包含单个图像,分别是衰落开始和结束时的图像。

一些额外的提示:

通过添加文件中所有<duration>标记的秒数,您将知道执行完整的diaporama循环所需的时间。

最好的配置就是这个(简化,没有持续时间):
<static>
<file>image1</file>
</static>
<transition>
<from>image1</from>
<to>image2</to>
</transition>
<static>
<file>image2</file>
</static>
<transition>
<from>image2</from>
<to>image3</to>
</transition>
...

不要忘记通过过渡到第一张照片来结束您的diaporama,否则它会突然从一个静态变为另一个静态。

我试过做一次动画背景。图像显示每个不到1秒。你可以试试它的乐趣,但坦率地说,你会想要在一天结束之前将鼠标扔到显示器上。

3
SteeveDroz

我想一会儿做同样的事情;这是我的剧本: http://Pastebin.com/FkaxaN3J

只需将其粘贴在目录中,生成可执行文件并运行即可。

2
zpletan

看到这个请求之后,我对一个解决方案感到好奇,并且在进入System Settings >> Appearances时发现了能够让你的壁纸图像成为默认壁纸选择的一部分。在终端中按照以下步骤操作:

  1. cd /usr/share/gnome-background-properties
    • 这将带您到提到的具体路径
  2. Sudo cp ./ubuntu-wallpapers.xml ~
    • 这会将文件ubuntu-wallpapers.xml复制到您的主目录中
  3. Sudo vim ./ubuntu-wallpapers.xml
    • 命令vim是终端编辑器,但如果您愿意,可以将其更改为gedit

进入该文件后,您将看到名为<wallpaper></wallpaper>的标签,这些标签围绕其他标签,如<name><options>。您需要将其复制并粘贴到该条目下方。完成后,您应该编辑您添加的额外条目以匹配您想要的内容。下面是一个例子:

enter image description here

在这个例子中,我对<name><filename><pcolor><scolor>信息进行了更改,以匹配我想要的壁纸所需的信息。现在我在System Settings -> Appearance GUI的壁纸部分看到壁纸作为默认选择:

enter image description here

如果有什么不起作用,请使用以下命令导回我们从上面创建的保存文件:

Sudo cp ~/ubuntu-wallpapers.xml /usr/share/gnome-background-properties/

希望这可以帮助。

1
ruffEdgz

IMG:  GNOME Shell的桌面更换器

by egach

如果您使用gnome-Shell(版本> 3.8,默认情况下在Ubuntu 17.10及更高版本中),请使用此Nice扩展。

简单的壁纸更换器,支持多种配置文件。支持集成到系统菜单或其自己的面板图标。守护进程用Python编写,并独立于扩展运行。

扩展主页https://github.com/BigE/desk-changer/

enter image description here

安装

首先,你必须安装gnome-tweaks

Sudo apt install gnome-tweaks

访问 gnome-extension 主页并打开幻灯片。之后,您可以配置扩展名以更改背景的更改时间和背景本身。要这样做打开gnome-tweaks,转到扩展选项卡,单击桌面更换器的配置图标。

1
abu_bua

IMG:  GNOME Shell的随机壁纸

by iFlow

如果您使用gnome-Shell(版本> 3.12,默认情况下在Ubuntu 17.10及更高版本中),请使用此Nice扩展。此扩展程序从在线源获取随机壁纸并将其设置为桌面背景。桌面背景可以定期或手动更新。

在线资源: - unsplash.com - desktopper.co - wallheaven.cc - reddit.com - 基本JSON API或文件(有关更多信息,请参阅GitHub wiki)(Chromecast,Bing,NASA,Google Earth View等)

扩展主页https://github.com/ifl0w/RandomWallpaperGnome

enter image description here

安装

首先,你必须安装gnome-tweaks

Sudo apt install gnome-tweaks

访问 gnome-extension 主页并打开幻灯片。之后您可以配置扩展。要这样做打开gnome-tweaks,转到扩展选项卡,单击随机壁纸的配置图标。

1
abu_bua