Chinaunix首页 | 论坛 | 博客
  • 博客访问: 591970
  • 博文数量: 40
  • 博客积分: 7274
  • 博客等级: 少将
  • 技术积分: 410
  • 用 户 组: 普通用户
  • 注册时间: 2005-12-20 15:00
个人简介

Expired

文章分类
文章存档

2011年(1)

2008年(3)

2007年(17)

2006年(10)

2005年(9)

分类: LINUX

2007-05-07 21:19:04

今天在论坛逛时,偶然发现上传图片后,图片自动加上了论坛自身的名字作为标记,想到 ImageMagick好像也有这个功能,于是一个 idea 便在脑海中形成了:可不可以每次截完图后自动加上截图时间之类的文字呢?类似于版权信息。

仔细看了下 IMagic Magick 的 Usage 例子 (http://www.imagemagick.org/Usage/), 找到一个最简单的例子,整理了成了一个脚本(add_label.sh),如下:

#!/bin/sh

### 需要传递2个参数,一个源图片文件,一个处理后的图片文件
if [ $# -ne 2 ]; then
    echo -e "\nUsage: `basename $0` \n"
    exit 1
fi

src=$1
dst=$2

color="#345678"
now=`date +"%Y年%m月%d日 %T"`
label="by Muddyboot 创建于 $now "

### 获取图片的宽度信息

width=`identify -format %w $src`
convert -fill "$color" -font SimHei-Regular \
    -background transparent -gravity SouthEast \
    -size ${width}x18 caption:"-- $label --" $src +swap \
    -gravity south -composite $dst

上面使用黑体作为标注的字体,位置是SouthEast,也就是南东,左西右东,上北下南,南东就是右下方。

处理后的图片如下:  
    

好了,现在可以配合那个自动截屏的脚本,让截图完后,自动加上标注,新的 printscreen.sh 内容如下:

#!/bin/sh

tmpfile=/tmp/screen_tmp.png
targetfile=/tmp/screen.png

import $tmpfile

add_label.sh $tmpfile $targetfile

大功告成 !
阅读(5427) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~