Bildschirmbereich ohne Desktop-Umgebung erfassen?

8

Ich führe OpenSuse mit dwm als Fenstermanager aus. Seit ich von KDE gewechselt bin, habe ich keine Möglichkeit gefunden, einen Screenshot zu machen oder sogar einen Teil meines Bildschirms aufzunehmen.

Gibt es eine Möglichkeit, dies in einer Befehlszeilenumgebung zu tun?

n0pe
quelle
serverfault.com/questions/125524/linux-cli-screenshot-without-x
Ciro Santilli 法轮功 病毒 审查 六四 六四 法轮功

Antworten:

9

Der euphonisch benannte Scrot macht Screenshots von der Kommandozeile ...

Es gibt einige einfache Optionen, einschließlich Zeitverzögerung und Bildqualität.

Wenn Sie eine Aufnahme in der Konsole machen möchten und einen Framebuffer ausführen, können Sie fbgrab verwenden .

Jasonwryan
quelle
Ich hatte Probleme mit fbgrab. Ich kann bestätigen, dass mein Bildspeicher 1366 x 768 ist, aber sowohl fbgrab als auch fbshot think / dev / fb0 sind 1024 x 768, was die Konsolenschriftarten skaliert und mich traurig macht. Wenn ich fbgrab die Breite und Höhe gebe, heißt es, dass nicht genügend Daten vorhanden sind.
BentFX
@BentFX Sind Sie sicher, dass die tatsächliche Framebuffer-Auflösung ist 1366x768, oder ist es nur die native Bildschirmauflösung (Panel)? Was gibt cat /sys/class/graphics/fb0/{modes,virtual_size}es? Wenn Sie einen 1024x768-Speicherauszug ausführen, wird das Bild dann zugeschnitten?
Rozcietrzewiacz
Ok, ich kann bestätigen, dass ich oft beim Sprechen aus meiner Klasse erwischt werde. Ja, es ist 1024x768, aber mein X-Bildschirm ist 1366 und das hat dazu beigetragen, dass die fbgrab-Ausgabe so schlecht aussah. 1366 ist die native Breite und es ist scharf. 1024x768 ist unscharf. Von der Konsole aus sieht es gut antialiasiert aus, aber ein Bild davon ist einfach hässlich. :) Ich stehe korrigiert!
BentFX
11

ImageMagick wird mit dem importDienstprogramm zum Erstellen von Screenshots geliefert. Es gibt unzählige Optionen, aber standardmäßig können Sie ein Rechteck auf dem Bildschirm zeichnen und nur diesen Teil speichern. Wenn Sie ein ganzes Fenster möchten, können Sie verwenden -window ID; Die Kennung "root" erfasst den gesamten Bildschirm

Michael Mrozek
quelle
3

Ich habe Shutter unter Xmonad ohne Desktop-Umgebung verwendet und es hat gut funktioniert. Shutter ist eine GUI-App mit einer anständigen Anzahl von Funktionen.

Die meiste Zeit gab ich " shutter -s" in einen Launcher / Terminal ein und das Programm ließ mich den Bereich des Bildschirms auswählen, den ich erfassen wollte. Dann drücke ich Enterund die Datei wird in meinem Home-Ordner gespeichert.

Phunehehe
quelle
3

Wenn Sie nach minimalistischen Lösungen suchen, verfügt Ihr XorgServer möglicherweise bereits über ein Tool namens xwd. Wenn nicht, und Sie würden es separat installieren, ist dies möglicherweise die leichteste Möglichkeit - die Binärdatei ist nur 27 KB groß. Achtung, denn es gibt Daten aus stdout!

Aber das Problem mit xwd, dass es den Screenshot in einer Dumps XWD X Window Dump Bilddatenformat, kein Standard - Bild. Sie können solche Speicherauszüge mit einem Begleitprogramm anzeigen xwud(ausführen xwud -in yourdumpfile). Um eine typische Bilddatei zu erhalten, müssen Sie sie mit etwas wie xwdtopnmoder convert(von ImageMagick) konvertieren .

rozcietrzewiacz
quelle