Sunday, May 06, 2012

groovyで画像にマーブルフィルタをかける

groovyで画像にマーブルフィルタをかけるには、以下のコードを実行します。
@Grab(group='com.jhlabs', module='filters', version='2.0.235')
import java.awt.*
import java.awt.image.*
import java.io.*
import javax.imageio.*
import com.jhlabs.composite.*
import com.jhlabs.image.*

// 画像にマーブルフィルタをかける
def img = ImageIO.read(new File("sf2.jpg"))

MarbleFilter mf = new MarbleFilter()
// Xスケールの設定
mf.setXScale(8f)
// Yスケールの設定
mf.setYScale(8f)
// マーブルフィルタをかける量
mf.setAmount(1.0f)
// 荒れ具合を指定
mf.setTurbulence(0.7f)

img = mf.filter(img, null)

ImageIO.write(img, "png", new File("marble.png"))

元画像
出力画像

動作環境
groovy 1.8.6, JDK7 update4

No comments: