在河里抓鱼的熊

抓鱼杂谈

Archive for July, 2010

命令行下批处理图片

without comments

每次拍完照片之后,因为照片太大无法直接上传到空间里面,需要将照片缩小。这时总是因为工作量太大而无法让人望而生畏。如果使用windows,而且手头又有photoshop,那很好。因为photoshop里面有个批处理功能叫Action,但是没有在windows下,更没有photoshop,有没有简便的方法可以做这种简单重复的事情呢?
答案是肯定的。那就是命令行的”imagemagick”!imagemagick是一组命令,包括convert, identify, mogrify, composite, montage, compare, stream, display, animate, import, conjure.
使用convert命令对原图做缩放处理,并将缩放后的图片放到resized/目录中:

find . -maxdepth 1 -name '*.JPG' -exec convert {} -resize '1024x1024' resized/{} \;

某些网站的图片上传功能要求后缀名小写,这时需要做一次转换。使用如下命令:

for f in *; do mv $f `echo $f | tr '[:upper:]' '[:lower:]'`; done

或者使用如下命令(更简单):

find resized -depth -exec rename 's/(.*)\/([^\/]*)/$1\/\L$2/' {} \;

详情请看这里这里

Written by qianxiong

July 28th, 2010 at 5:56 pm

正则与中文

without comments

在正则表达式中,拉丁字符的匹配很是方便,可是如果要匹配的内容中有中文或者中文标点符号就很恼火。今天特意对中文码表做了细致的了解,分享给大家。
按照Unicode Block分别介绍:

  1. Basic Latin(\u0020-\u007E):
    这些是基本的可见ASCII码
  2. HalfWidth and FullWidth Forms(\uFF01-\uFFEE)
    全角符号(\uFF01-\uFF60):包含了大部分中文输入法所输入的符号。
    半角符号(\uFF61-\uFFEE):
  3. Genaral Punctuation(\u2000-\u206F):
    包含减号、破折号、省略号、单双引号、百分号、千分号、章节符号、分秒符号
  4. CJK Synmbols and Punctuation(\u3000-\u303F):
    常见的有下列符号《》「」『』【】〖〗
  5. CJK Unified Ideograph(\u4E00-\u9FFF):
    包含所有的中文汉字。因为从9FCC到最后都未定义,所以正则表达式中直接验证\u4E00-\u9FCB即可。有些朋友在介绍中文的正则匹配时说是从\u4E00-\u9FA5,但是在9FA5之后还有30个可见字,8个不可识别字(已分配,但无汉字实现),虽然最后有52个编码未分配,但起码也要在9FC3处结束,而不是9FA5。
  6. CJK Compatibility Ideographs(\uF900-\uFAFF):
    另一块汉字区域。FADA-FAFF未分配,所以仅在\uF900-\uFAD9有汉字。不过,这一区域的汉字在CJK Unified Ideograph块中都存在,不知道当初卫生么会分配这么一小块来放汉字!

Written by qianxiong

July 1st, 2010 at 1:21 pm

Posted in 技术

Tagged with , ,