Index > アタリ画像の作成( jython )
Tue, June 2, 2009

アタリ画像の作成( jython )

groovy版のアタリ画像作成コードはこちら

ライティングをしている段階では、まだ画像データが用意されていないことが あります。 その場合にアタリとしてサイズだけは合わせたダミー画像を用意して 作業することがあります。

今回はそんな場合にアタリ画像を簡単に生成するための jython スクリプトです。

gen-atari.py

import sys

import java.lang as lang
import java.io as io
import java.awt as awt
import java.awt.image as awtimage
import javax.imageio as imageio





def createImage(size):
    type=awtimage.BufferedImage.TYPE_4BYTE_ABGR
    bimg=awtimage.BufferedImage(size.width,size.height,type)
    return bimg

def paint(g):

    g.setColor(awt.Color.WHITE)
    g.fill(awt.Rectangle(mysize.width,mysize.height))

    g.setColor(awt.Color.BLACK)
    g.draw(awt.Rectangle(mysize.width-1,mysize.height-1))

    #msg="Hello World."
    msg="dummy"
    w=g.getFontMetrics().stringWidth(msg)
    h=g.getFontMetrics().getHeight()

    x=(mysize.width-w)/2
    y=(mysize.height-h)/2+12
    g.drawString(msg,x,y)





width=sys.argv[1]
height=sys.argv[2]

mysize=awt.Dimension(int(width),int(height))

outf=sys.argv[3]


bimg=createImage(mysize)
g=bimg.getGraphics()
g.setRenderingHint(awt.RenderingHints.KEY_ANTIALIASING,awt.RenderingHints.VALUE_ANTIALIAS_ON)
paint(g)
g.dispose()

fos=io.FileOutputStream( outf )
imageio.ImageIO.write(bimg,"PNG",fos)
fos.close()

Makefile

gen-atari,py を使用して、いろいろなサイズの アタリ画像を作成するためのMakefile.

py := gen-atari.py

all :
    jython $(py) 100 100 100x100.png
    jython $(py) 200 140 200x140.png
    jython $(py) 300 30  300x30.png
    jython $(py) 140 120 140x120.png

clean :
    $(RM) *.png

make すると、それぞれ 100x100, 200x140, 300x30, 140x120 の画像サイズの PNG データを生成します。

 Twitter
follow me on Twitter
 Categories