Comment combiner des images dans Go
Dans Go, vous pouvez manipuler des images pour créer une seule image plus grande à partir de plusieurs images plus petites. Pour ce faire, suivez les étapes ci-dessous :
Par exemple, pour créer une concaténation horizontale de deux images, vous pouvez utiliser le code suivant :
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) }
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!