Hintergrundbild mit mehreren Bildschirmen unter Linux?

8

Wie kann ich mehrere Monitore unter Linux automatisiert tapezieren?

Grundsätzlich öffne ich normalerweise GIMP, nehme dann mehrere Bilder und fasse sie zu einem einzigen großen Bild zusammen, das alle Monitore umfasst. Dieser Ansatz funktioniert, kann aber zeitaufwändig sein. Ich frage mich, ob es eine Anwendung gibt, die sich darum kümmern kann.

Einige Funktionen, die mich interessieren würden:

  1. Kann die Größe eines einzelnen Bildes ändern, um beispielsweise beide Monitore abzudecken.
  2. Verschiedene Möglichkeiten zum Ändern der Bildgröße, z. B. Beibehalten des Seitenverhältnisses oder nicht
  3. Stellen Sie mehr als ein Bild zusammen, sodass auf einem Bildschirm ein Bild und auf dem anderen Bildschirm ein anderes Bild angezeigt wird
  4. Ich benutze Xinerama (Really Nvidia Twinview)
  5. Sie können einige grundlegende Änderungen am Bild vornehmen, z.

    • Beschneiden Sie das eine oder andere Bild so, dass das gesamte Bild den Bildschirm ausfüllt
    • Möglichkeit, das Bild so zu verschieben, dass es ausgerichtet werden kann
    • Wäre schön, jedes Bild einzeln skalieren zu können

Ich habe etwas gesucht und im Allgemeinen fand ich:

  1. Einzelbild als Hintergrundbild über zwei Bildschirme gespannt
  2. Zwei Bilder, eines für jeden Bildschirm, aber keine Möglichkeit, das Bild / etc. Zu ändern
  3. Ein paar andere, aber im Grunde genommen waren die meisten, die ich gefunden habe, nicht in der Lage, mehrere Bilder mit einem Bild auf jedem Desktop zu verwenden und jedes Bild unabhängig zu ändern, um auf diesen Bildschirm zu passen / zu arbeiten, und auch nicht zwischen einem über den gesamten Bildschirm gestreckten Einzelbild oder mehreren Bildern zu wechseln .
Pharaun
quelle
Ich dachte, Xinerama sei nicht mit Twinview kompatibel. Zumindest nicht auf meinem Computer. Benutzt du sie beide wirklich irgendwie? Welche Desktop-Umgebung verwenden Sie? (KDE 3? 4? Gnome? Usw.)
David Z
Mein Verständnis war, dass Twinview einige der Xinerama-Steuerelemente "simuliert", damit Apps wissen, dass sie den Cross 2+ -Bildschirm usw. nicht maximieren können. Ich verwende überhaupt keine Desktop-Umgebung. Derzeit ist mein aktuelles Setup nur Openbox + Pythonbar + Conky. Ich benutze derzeit feh, um mein Hintergrundbild festzulegen.
Pharaun

Antworten:

4

Das 'Stickstoff'-Tool kann genau das tun, was Sie brauchen. Wenn Sie das Tool ausführen, fügen Sie zuerst ein oder mehrere Verzeichnisse mit Bildern hinzu und richten dann die Hintergründe wie gewünscht ein, einschließlich der Einstellung verschiedener Bilder auf den beiden Bildschirmen.

Jetzt speichert Stickstoff diese Informationen in .config / stickstoff / bg-saved.cfg

Sie stellen das gespeicherte Setup mit 'stickstoffrestore' wieder her, aber Sie können diese Datei natürlich auch zuerst ändern und dann stickstoff aufrufen.

Jan de Vos
quelle
3

Dies ist ein alter Thread, aber da dies fehnicht richtig demonstriert wurde, fühlte ich mich dazu verpflichtet. Das Problem mit Stickstoff ist, dass Sie, sobald Sie mehrere Monitore haben, die Art und Weise, wie Sie das Bild an jeden Bildschirm anpassen, nicht automatisieren können.

feh --bg-fill ~/Pictures/Wallpapers/MyWallpaper.jpg

passt das Bild an Ihren Hintergrund an, ohne das Seitenverhältnis zu verlieren. Wenn Sie zwei Dateien ablegen, wechselt die erste zum ersten Monitor, die andere zum zweiten wie folgt:

$ feh --bg-center imagePathForFirstMonitor imagePathForSecondMonitor

Sie können das ausgewählte Bild auch zufällig auswählen, indem Sie die Option -z und * für den Ordnerinhalt wie folgt verwenden:

feh --bg-fill -z ~/Pictures/Wallpapers/*
# This command puts a random image for each monitor you have

fehist gleichzeitig ein Bildbetrachter und bietet unzählige andere Optionen, die Sie anhand man fehder folgenden Quellen erkunden oder lesen können.

Quellen:

https://wiki.archlinux.org/index.php/feh

https://feh.finalrewind.org/

Ege
quelle
Wie kann ich die Liste der Pfade zu meinen Monitordateien abrufen?
user3598726
Entschuldigung, ich werde es bearbeiten, es sollte der Bildpfad für jeden Monitor sein. Also setzen Sie einfach die Bildpositionen
Ege
2

Ich kenne eine solche Anwendung nicht, aber Sie könnten ein Skript schreiben, das mit ImageMagick das macht, was Sie wollen, um die Bilder zu bearbeiten / zu komponieren und fehdas Hintergrundbild festzulegen. Zum Beispiel dieses ImageMagick ‚s - montageBefehl:

montage a.jpg b.jpg c.jpg -geometry +0+0 -tile x1 -resize x1080 out.jpg

wird komponiert die Dateien a.jpg, b.jpgund c.jpgin ein einziges Bild ( out.jpg) nach jeder Eingabe Ändern der Größe 1080px hoch.

Hoffe das hilft, zumindest bis du eine bessere Lösung findest.

cYrus
quelle