Ich habe eine ähnliche Frage zu Programming Puzzles & Code Golf gestellt , aber ich würde eine Version mit ein wenig Benutzerfreundlichkeit benötigen.
Hier ist, was die Software tun soll:
Das Programm muss nicht unbedingt
Das Programm muss nicht
Der Grund, warum ich das brauche:
Wenn ich nach Screenshots frage, machen die Leute Screenshots ihrer Desktops, die heutzutage 1920 x 1080 sind. Ich muss sie auf Beamern präsentieren, die manchmal nur 1024x768 verarbeiten können. Dadurch werden die wichtigen Dinge des Screenshots unlesbar.
In vielen Fällen sind Anwendungen nicht für 1920 x 1080 ausgelegt und es gibt viel ungenutzten Speicherplatz, der entfernt werden kann.
Beispiele:
Vor:
Entfernbare Bereiche (manuell markiert):
Nach:
Greenshot verfügt über eine integrierte Auto-Crop-Funktion, die jedoch nur funktioniert, wenn der Hintergrund eine einheitliche Farbe hat.
Allerdings hat Greenshot ein „External Commands“-Plug-in, mit dem Sie eines der Skripte aus Ihrer Code-Golf-Frage ausführen können .
Hier ist eine aktualisierte Version des Python-Skripts von @DenDenDodelrows
:
#delrows.py, from DenDenDo at https://codegolf.stackexchange.com/a/46964
import imageio
from matplotlib import pylab
from pylab import *
from sys import argv
from subprocess import call
threshold = int(argv[2])
def delrows(im, threshold):
d = diff(im, axis=0)
mask = where(sum((d!=0), axis=(1,2))>threshold)
return transpose(im[mask], (1,0,2))
im7 = imageio.imread(argv[1])
newFile = argv[1] + "_" + argv[2] + ".png"
file = imageio.imwrite(newFile, delrows(delrows(im7,threshold),threshold))
call(["C:\Program Files\Greenshot\Greenshot.exe",newFile])
Ersetzen Sie bei Bedarf C:\Program Files\Greenshot\Greenshot.exe
in der letzten Zeile von delrows.py
durch den tatsächlichen Pfad von greenshot.exe
.
Speichern Sie das Skript, z C:\Programmes\seam-carving\delrows.py
.
Installieren Sie die benötigten Python-Module mit Pip:
pip install imageio matplotlib pillow numpy
Klicken Sie im Benachrichtigungsbereich auf das Greenshot-Symbol und gehen Sie zu „Schnelleinstellungen“ > „Ziel“ > „Im Bildeditor öffnen“.
Klicken Sie erneut auf das Greenshot-Symbol im Infobereich und wählen Sie „Externe Befehle konfigurieren“.
Klicken Sie auf „Neu“.
Geben Sie als „Name“ „Auto-Chop“ ein.
Geben Sie bei „Command“ den vollständigen Pfad zu python.exe ein, zC:\Python37\python.exe
Geben Sie für "Argument" den vollständigen Pfad zu delrows.py
, in Anführungszeichen ein, gefolgt von einem Leerzeichen, "{0}"
, Leerzeichen und dem threshold
Wert. Zum Beispiel:
"C:\Programmes\seam-carving\delrows.py" "{0}" 29
(Denken Sie daran, der threshold
Wert gibt an, wie viele Pixel sich unterscheiden können, damit zwei Zeilen als gleich angesehen werden. Fangen Sie also klein an und erhöhen Sie ihn nach Bedarf.)
Klicken Sie auf „OK“ und „OK“, um Ihre Einstellungen zu speichern.
Drücken Sie Print Screenund wählen Sie einen Bereich Ihres Bildschirms aus, den Sie erfassen möchten.
Die Region wird im Greenshot Image Editor geöffnet. Wählen Sie oben in der Symbolleiste die Schaltfläche "Auto-Chop".
Das Skript wird ausgeführt und der automatisch geschnittene Screenshot wird in einem neuen Greenshot-Fenster geöffnet.
Wenn zu viel zerkleinert wurde, verringern Sie den Schwellenwert in Schritt 10 des Setups. Wenn nicht genug gehackt wurde, erhöhen Sie den Schwellenwert und versuchen Sie es erneut.
Benutzer25250
Nikolaus Raul