go
問題
を使用した回転による画像操作:
-
-
目標は、I1とi2を特定の角度でBIに配置し、最終画像を作成することです。 I1とI2の座標は、それらの回転角度とともに提供されます。 i1とi2は部分的に重複する場合がありますが、z-indexはフォアグラウンドに表示される画像を決定します。 (http://golang.org/doc/articles/image_draw.html). - 画像と回転と組み合わせるために、グラフィックスゴーと呼ばれる補助パッケージをお勧めします。 2つの画像と回転の組み合わせを示すサンプルGOプログラムは次のとおりです。
輸入 (
「FMT」
「OS」
「イメージ/ドロー」
"画像"
「画像/jpeg」
「code.google.com/p/graphics-go/graphics」
))
func main(){
fimg1、_:= os.open( "arrow1.jpg")
defer fimg1.close()
img1、_、_:= image.decode(fimg1)
fimg2、_:= os.open( "arrow2.jpg")
defer fimg2.close()
img2、_、_:= image.decode(fimg2)
m:= image.newrgba(image.rect(0、0、800、600))
draw.draw(m、m.bounds()、img1、image.point {0,0}、draw.src)
//draw.draw(m、m.bounds()、img2、image.point {-200、-200}、draw.src)
graphics.rotate(m、img2、&graphics.rotateoptions {3.5})
toimg、_:= os.create( "new.jpg")
defer toimg.close()
jpeg.encode(toimg、m、&jpeg.options {jpeg.defaultquality})
}
この例の例:
2つの画像、「arrow1.jpg」と「arrow2.jpg」はメモリにロードされます。 [M "Origin。詳細については、そのドキュメントを参照してください。