Solução automática personalizável usando scrot
e imagemagick
Visão geral
scrot
é um utilitário de captura de tela CLI altamente personalizável. Neste exemplo, utilizamos sua capacidade de passar capturas de tela para programas externos a fim de adicionar um bonito efeito de sombra com imagemagick
.
Nota : Este método não funciona corretamente em Unity e provavelmente não funcionará em nenhum outro WM com bordas arredondadas. Você ainda pode capturar imagens, é claro, mas a sombra será aplicada não apenas à janela, mas também a partes do plano de fundo. Você pode solucionar esse problema substituindo scrot
por gnome-screenshot
e ajuste o script de acordo.
Exemplo de foto
Scriptdodropshadow
#!/bin/bash#NAME:dropshadow.sh#VERSION:#AUTHOR:(c)2013Glutanimate#DESCRIPTION:-addstransparentdropshadowtoimages(e.g.screenshots)#-movesthemtopredefinedscreenshotfolder#FEATURES:#DEPENDENCIES:imagemagicksuite##LICENSE:MITlicense(http://opensource.org/licenses/MIT)##NOTICE:THESOFTWAREISPROVIDED"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 : linha de comando original convertida por Stephen Connolly .
Como integrá-lo ao seu sistema
Continue a vincular a seguinte linha de comando a uma chave de sua escolha e você deverá estar pronto:
scrot -szb -e 'dropshadow.sh $f'
Se você está usando o LXDE / Openbox como eu, você pode adicionar o seguinte keybind ao seu lxde-rc.xml
:
<keybind key="C-Print"><action name="Execute"><execute>scrot -szb -e 'dropshadow.sh $f'</execute></action></keybind>
Observação : certifique-se de incluir dropshadow.sh
no seu PATH
ou de substituí-lo pelo local real do script em seu sistema de arquivos.
Uso
Pressione o combo de teclado que você definiu na etapa anterior (por exemplo, CTRL + Imprimir ) e clique em uma janela à sua escolha.