Soluzione automatica personalizzabile tramite scrot
eimagemagick
Panoramica
scrot
è un'utilità di screenshot CLI altamente personalizzabile. In questo esempio utilizziamo la sua capacità di trasmettere schermate a programmi esterni al fine di aggiungere un grazioso effetto dropshadow con imagemagick
.
Nota : questo metodo non funziona correttamente in Unity e molto probabilmente non funziona su nessun altro WM con bordi arrotondati. Ovviamente puoi comunque catturare immagini, ma l'ombra esterna verrà applicata non solo alla finestra ma anche alle parti dello sfondo. Potreste essere in grado di risolvere questo sostituendo scrot
con gnome-screenshot
e regolare lo script di conseguenza.
Colpo di esempio
Script di dropshadow
#!/bin/bash
# NAME: dropshadow.sh
# VERSION:
# AUTHOR: (c) 2013 Glutanimate
# DESCRIPTION: - adds transparent dropshadow to images (e.g. screenshots)
# - moves them to predefined screenshot folder
# FEATURES:
# DEPENDENCIES: imagemagick suite
#
# LICENSE: MIT license (http://opensource.org/licenses/MIT)
#
# NOTICE: THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
# INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
# PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
# TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE
# OR OTHER DEALINGS IN THE SOFTWARE.
#
#
# USAGE: dropshadow.sh <image>
SCREENSHOTFOLDER="$HOME/Pictures/Screenshots"
FILE="${1}"
FILENAME="${FILE##*/}"
FILEBASE="${FILENAME%.*}"
convert "${FILE}" \( +clone -background black -shadow 80x20+0+15 \) +swap -background transparent -layers merge +repage "$SCREENSHOTFOLDER/${FILEBASE}.png"
rm "$FILE" #remove this line to preserve original image
Nota : riga di comando di conversione originale di Stephen Connolly .
Come integrarlo nel tuo sistema
Procedi a associare la seguente riga di comando a una chiave di tua scelta e dovresti essere pronto per iniziare:
scrot -szb -e 'dropshadow.sh $f'
Se stai eseguendo LXDE / Openbox come me, puoi aggiungere la seguente combinazione di tasti al tuo lxde-rc.xml
:
<keybind key="C-Print"><action name="Execute"><execute>scrot -szb -e 'dropshadow.sh $f'</execute></action></keybind>
Nota : assicurati di includere dropshadow.sh
nel tuo PATH
o di sostituirlo con la posizione effettiva dello script nel tuo file system.
uso
Premi la combinazione di tasti definita nel passaggio precedente (ad es. CTRL+ Print) E fai clic su una finestra di tua scelta.