任意の大きさの画像を角丸四角に切り取るには、以下のVBSをWSHから実行します。
sample342.vbs
------------------------------------------------------------------------------------
Set im = CreateObject("ImageMagickObject.MagickImage.1")
rem 角丸x
rx = Wscript.Arguments(0)
rem 角丸y
ry = Wscript.Arguments(1)
rem 入力ファイル名
ifile = Wscript.Arguments(2)
rem 出力ファイル名
ofile = Wscript.Arguments(3)
rem 入力ファイルの幅・高さを取得する
width = im.identify("-format", "%w", ifile)
height = im.identify("-format", "%h", ifile)
rem 角丸四角で画像を切り取る
im.Convert ifile, "-matte", "(", "-size", width & "x" & height, "xc:none", "-fill", "white", "-draw", "roundrectangle 0,0," & (width-1) & "," & (height-1) & "," & rx & "," & ry , ")", "-compose", "dst_in", "-composite", ofile
Set im = Nothing
------------------------------------------------------------------------------------
元画像(sf.jpg)
実行例:
cscript sample342.vbs 20 10 sf.jpg sample342a.png
引数として、角丸x=20,角丸y=10,入力ファイル=sf.jpg,出力ファイルsample342a.pngを与えています。
出力画像(sample342a.png)
元画像(sf2.jpg)
実行例:
cscript sample342.vbs 30 30 sf2.jpg sample342b.png
出力画像(sample342b.png)
No comments:
Post a Comment