Go で画像を結合する方法
Go では、画像を操作して、複数の小さな画像から 1 つの大きな画像を作成できます。これを行うには、以下の手順に従います。
たとえば、2 つの画像の水平方向の連結を作成するには、次のコードを使用できます:
import ( "fmt" "image" "image/draw" "image/jpeg" "os" ) func main() { // Load the images img1, err := os.Open("test1.jpg") if err != nil { fmt.Println(err) } img2, err := os.Open("test2.jpg") if err != nil { fmt.Println(err) } img1, _, err = image.Decode(img1) if err != nil { fmt.Println(err) } img2, _, err = image.Decode(img2) if err != nil { fmt.Println(err) } // Create the large image r1 := img1.Bounds() r2 := img2.Bounds() r := image.Rectangle{image.Point{0, 0}, r2.Max} rgba := image.NewRGBA(r) // Draw the images draw.Draw(rgba, r1, img1, image.Point{0, 0}, draw.Src) draw.Draw(rgba, r2, img2, image.Point{r1.Dx(), 0}, draw.Src) // Export the final image out, err := os.Create("output.jpg") if err != nil { fmt.Println(err) } var opt jpeg.Options opt.Quality = 80 jpeg.Encode(out, rgba, &opt) }
以上がGoで複数の画像を1つに結合するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。