218 votes

Comment créer un diaporama de fond d'écran ?

Comment créer un diaporama de fond d'écran avec mon propre jeu d'images ?

  • Avec les images provenant d'un dossier de photos, ou présélectionnées
  • Avec les images affichées dans l'ordre, ou de manière aléatoire
  • Les images changent toutes les quelques minutes, ou après des périodes de temps aléatoires.

8voto

Pykler Points 607

Pour gnome 3, générez le xml en utilisant l'une des réponses précédentes, puis vous pourrez ajouter le xml généré via la ligne de commande :

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

Une autre solution (ceci ajoutera votre bg à la zone Apparence sous gnome-control-center) :

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

Remplacez le nom "Pykler" et le chemin "/home/pykler/.backgrounds/realtime/background.xml" si nécessaire.

6voto

Anto Points 12222

Pour Gnome 3, vous pouvez utiliser l'application Wallpaper Slideshow.

Wallpaper Slideshow App screenshot

Selon son développeur, il présente les caractéristiques suivantes :

  • Permet de choisir le dossier via un navigateur.
  • Permet de définir le délai d'attente en secondes.
  • Permet de choisir la profondeur du sous-répertoire.
  • Vous pouvez l'activer ou le désactiver d'un simple clic.
  • Infobulles complètes

A télécharger :

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

Ensuite, exécutez wp-show dans le dossier gnome-3-wp de votre dossier personnel.

Pour plus d'informations, voir aquí y aquí .

4voto

Madhava Points 449

Utilisez la cortina, ça marche plutôt bien.

Il peut définir l'image d'arrière-plan du bureau en choisissant un fichier aléatoire dans un répertoire donné.

Il peut être installé via le Centre logiciel Ubuntu.

Install via the software center

4voto

Jet Points 271

Ok voici comment j'ai fait, qui n'est probablement pas la meilleure façon de le faire, mais cela a fonctionné et je n'ai pas eu à installer quoi que ce soit pour le faire. En 11.10, j'ai trouvé le script Python ci-dessous ( slideshow.py ) qui génère un slideshow.xml (exécuté à partir du répertoire contenant les images). C'est toujours le fichier nécessaire dans 12.04 mais vous avez également besoin d'un autre fichier XML. Mettez le fichier XML généré par slideshow.py script en /usr/share/backgrounds/contest y chown il à root . Une fois cela fait, vous devrez exécuter le deuxième script Python ( wallpapers.py ) qui a été adapté du premier. Mettez le fichier généré par wallpapers.py sur /usr/share/gnome-background-properties et encore chown pour l'enraciner. À ce stade, vous devriez être en mesure d'aller dans "Paramètres du système" -> Apparence et de choisir votre diaporama ou l'une des images qu'il contient.

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()

3voto

SkunkSpinner Points 2683

Vous pourriez être intéressé par un programme qui crée automatiquement un tel diaporama de fond d'écran.

Selon cette OMG ! Ubuntu post vous avez par exemple Galerie de papiers peints . Il prend comme données d'entrée les photos étiquetées de votre galerie Shotwell. Il devient donc très facile d'ajouter et de supprimer des photos, par exemple.

Sélectionnez d'abord les tags concernant les photos que vous souhaitez voir s'afficher, puis configurez comme vous le souhaitez le temps de commutation, l'ordre, etc. Voici quelques captures d'écran :

Wallpaper Gallery display optionsWallpaper Gallery data source

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X