Groovy MY-NOTEBOOK

Monday, January 23, 2012

gradle を make の代わりに使う...というか gradle から groovy スクリプトを実行する

make を使えば、以下のように


run :
	groovy hello.groovy

というだけの話だが、これを gradle で処理させる場合...

続きを読む

Monday, January 23, 2012

XmlParser でパースした XML文書 を処理した後に再度 XML文書に戻す

基本的に http://docs.codehaus.org/display/GROOVY/Updating+XML+with+XmlParser に全部書いてある。

続きを読む

Monday, January 16, 2012

groovy で画像リサイズ

カレントディレクトリにあるPNGを 500px の幅の画像に変換するコード。


import java.awt.Image
import java.awt.image.BufferedImage
import javax.imageio.ImageIO


class Conv {

	File inputFile
	File outputFile

	void proc(){
		int width=500 // default width
		
		// イメージの読み込みとリサイズ
		def img = ImageIO.read(inputFile)
		def imgScaled = img.getScaledInstance(width,-1,Image.SCALE_SMOOTH)
		
		// リサイズ(スケール)されたイメージを直接 ImageIO.write() できないので、処理を追加
		def img2 = new BufferedImage((int)imgScaled.width,(int)imgScaled.height,BufferedImage.TYPE_4BYTE_ABGR)
		def g = img2.getGraphics();
		g.drawImage(imgScaled,0,0,null)
		g.dispose()
		
		// リサイズされたイメージを保存
		ImageIO.write(img2,'PNG',outputFile)
	}
}

new File('.').listFiles( { it.isFile() && it.name.endsWith('png') } as FileFilter ).each{
	new Conv( inputFile:it,outputFile:it ).proc()
}


gist:1621382

続きを読む

Saturday, January 14, 2012

HSQLDB を key-value ストアとして使うクライアントライブラリ

以前に書いたコード。
なんでこんな回りくどいことをしているんだろう・・・と思うがとりえず残しておこう。
そのうち直そう。

HSQLDB を動かすにはこちらのエントリを参照のこと

続きを読む

« NEWER POSTS | OLDER POSTS »

© 2009-2012 Tomoaki Oshima