web-dev-qa-db-ja.com

デスクトップ壁紙スライドショーを作成するにはどうすればよいですか?

自分の画像セットでデスクトップの壁紙スライドショーを作成するにはどうすればよいですか?

  • 画像フォルダからの画像、または事前選択された画像
  • 画像を順番に、またはランダムに表示します
  • 画像が数分ごとに、またはランダムな期間後に変化する
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

ウォールチ

ソフトウェアセンターには、2つの壁紙チェンジャーがあります-Gnome-Shell/Unity/Gnome-Classicの場合はwallch、KUbuntuの場合はWally

Wallchに集中しましょう。

残念ソフトウェアセンターのWallchのバージョンは古く、特に14.04で多くの問題があります!最新バージョンのリポジトリがあります。

インストールするには、リポジトリを追加します(16.04でこれを行う必要はありません):

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

次にWallchをインストールします。

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

次に、ダッシュから開始します。

enter image description here

アプリケーションの設定を起動しましょう:

enter image description here

バブル通知-迷惑な-同時に音を無効にすることができます!

enter image description here

同時に、起動オプションを定義できます:

enter image description here

保存-写真のフォルダーを追加-この例では、Ubuntuに付属するデフォルトの壁紙に/usr/share/backgroundsを使用します

enter image description here

現在、2つの選択肢があります。

選択肢1を起動

(@ナルトに感謝)

ランチャーにwallchを保持

enter image description here

wallchを終了し、壁紙の変更を開始します

enter image description here

選択肢2を起動

ランチャーがなくてもログイン時に開始wallch

ダッシュから:

enter image description here

次に、wallch --constantコマンドを使用して新しいスタートアップアプリケーションを作成します

enter image description here

N.B. -一部のコンピューターでは、これは機能しません。解決策は、次のQ&Aに従って、wallchデーモンの起動に遅延を導入することです。

ログイン時に背景が自動循環しない

86
fossfreedom

IMG:  バラエティ

ホームページ:http://peterlevi.com/variety
Github:https://github.com/varietywalls/variety

VarietyはLinuxシステム用の壁紙マネージャーです。ローカルファイルやオンラインサービス(Flickr、Wallhaven、Unsplashなど)を含む多数のデスクトップおよび壁紙ソースをサポートしています。

サポートされている場合、Varietyはトレイアイコンとして表示され、簡単に一時停止および再開できます。それ以外の場合、デスクトップエントリメニューには同様のオプションセットがあります。

バラエティには、油絵やぼかしなどのさまざまな画像効果や、背景に引用符や時計を重ねるオプションも含まれています。

enter image description here

インストール

ユニバースリポジトリで入手できます。それをインストールするには、実行します

Sudo apt install variety

また、 Peter Levi's PPA からインストールすることもできます。

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

自分で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の場合、以前の回答の1つを使用してxmlを生成し、生成されたxmlをコマンドラインから追加できます。

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

別の解決策(これにより、gnome-control-centerの下の外観領域にbgが追加されます):

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 screenshot

開発者によると、次の機能があります。

  • ブラウザを介してフォルダを選択できます。
  • タイムアウトを秒単位で設定できます。
  • サブディレクトリの深さを選択できます。
  • ワンクリックで有効または無効にできます。
  • フル機能のツールチップ

ダウンロードする:

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

次に、ホームフォルダーのgnome-3-wpフォルダーでwp-showを実行します。

詳細については、 here および here を参照してください。

6
Mandy

コルチナを使用すると、かなりうまく機能します。

デスクトップの背景画像を設定して、指定されたディレクトリからランダムなファイルを設定できます。

Ubuntu Software Centerからインストールできます。

Install via the software center

4
Madhava

これが私がやった方法です。これはおそらく最善の方法ではありませんが、機能し、何もインストールする必要はありませんでした。 11.10に戻って、以下のpythonスクリプト(slideshow.py)を見つけました。このスクリプトはslideshow.xmlファイルを生成します(その中に画像があるディレクトリから実行します)。これは12.04で必要なファイルですが、別のXMLファイルも必要です。 slideshow.pyスクリプトによって生成されたXMLファイルを/usr/share/backgrounds/contestおよびchownに入れて、rootに入れます。それが完了したら、最初から適合させた2番目のpythonスクリプト(wallpapers.py)を実行する必要があります。 wallpapers.pyから生成されたファイルを/usr/share/gnome-background-propertiesに入れ、再びchownに入れてルートにします。その時点で、[システム設定]-> [外観]に移動し、スライドショーまたはその中の写真を選択できるはずです。

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の投稿 によると、たとえば 'Wallpaper Gallery' になります。 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

これは、私がシロクマの壁紙を追加する方法です。以前は、コンテストフォルダーにあるexact.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に1つある必要があります(少なくともPrecise Pangolinでは)。

私の場合、このファイルはprecise.xmlと呼ばれ、XMLファイルです。変更するために知っておく必要があるのは、tagのような<background>には他のタグとテキストが含まれ、</background>で閉じる必要があるということだけです。

これらのタグの意味を調べて(以下を参照)、これらの写真の名前を変更し、名前を付けて保存...どこかで試します。それを呼び出しますwhatever_you_want.xml

次に、背景を変更します。コンピューターを参照して新しい壁紙を選択し、。jpgを選択する代わりに、.xml.

いくつかのタグ:

<background>にはすべてが含まれています。ファイルはそれで始まり、</background>で終わる必要があります。ルートタグと呼ばれます。
<starttime>は、ダイアポラマがいつ始まるかを定義します。正確な日付、任意の日付を指定する必要があります。
<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>
...

ダイアポラマを最初の写真への移行で終了することを忘れないでください。さもないと、静的から静的へと突然変化します。

一度アニメーションの背景をやろうとしました。画像はそれぞれ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で記述され、拡張機能とは独立して実行されます。

Extension Homepagehttps://github.com/BigE/desk-changer/

enter image description here

インストール

まず、gnome-tweaksをインストールする必要があります

Sudo apt install gnome-tweaks

gnome-extension ホームページにアクセスして、スライドをオンにします。その後、拡張機能を設定して、背景の変更時間と背景自体を変更できます。これを行うには、gnome-tweaksを開き、Extensionタブに移動し、デスクチェンジャーのConfigureアイコンをクリックします。

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ビューなど)

Extension Homepagehttps://github.com/ifl0w/RandomWallpaperGnome

enter image description here

インストール

まず、gnome-tweaksをインストールする必要があります

Sudo apt install gnome-tweaks

gnome-extension ホームページにアクセスして、スライドをオンにします。その後、拡張機能を構成できます。これを行うには、gnome-tweaksを開き、Extensionタブに移動し、ランダム壁紙のConfigureアイコンをクリックします。

1
abu_bua