使用scrot
和可定制的自动解决方案imagemagick
总览
scrot
是高度可定制的CLI屏幕截图实用程序。在此示例中,我们利用其功能将屏幕截图传递给外部程序,以使用添加漂亮的阴影效果imagemagick
。
注意:此方法在Unity下无法正常工作,而且很可能在任何其他带有圆角边框的WM上也不起作用。当然,您仍然可以捕获图像,但是投影阴影不仅会应用于窗口,还会应用于部分背景。您可以通过替换scrot
为gnome-screenshot
并相应地调整脚本来解决此问题。
样品拍摄
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
注意:Stephen Connolly的原始转换命令行。
如何将其集成到您的系统中
继续将以下命令行绑定到您选择的键,您应该已经准备就绪:
scrot -szb -e 'dropshadow.sh $f'
如果您像我一样运行LXDE / Openbox,则可以将以下按键绑定添加到您的lxde-rc.xml
:
<keybind key="C-Print"><action name="Execute"><execute>scrot -szb -e 'dropshadow.sh $f'</execute></action></keybind>
注意:请确保将其包含dropshadow.sh
在您PATH
的文件系统中或将其替换为脚本的实际位置。
用法
敲击您在上一步中定义的键盘组合(例如CTRL+ Print),然后单击您选择的窗口。