Maison > développement back-end > Golang > Comment puis-je combiner plusieurs images en une seule dans Go ?

Comment puis-je combiner plusieurs images en une seule dans Go ?

Linda Hamilton
Libérer: 2024-11-06 07:31:02
original
964 Les gens l'ont consulté

How can I combine multiple images into one in Go?

Création d'une seule image à partir de plusieurs images dans Go

Question :

Dans Go, comment pouvons-nous combiner plusieurs fichiers image (par exemple, PNG ou JPEG) en une seule image plus grande ?

Réponse :

Pour concaténer des images dans Go, suivez ces étapes :

  1. Charger les images :

    img1, _, err := image.Decode(os.Open("test1.jpg"))
    img2, _, err := image.Decode(os.Open("test2.jpg"))
    Copier après la connexion
  2. Déterminer la position :
    Décidez où la deuxième image doit être placée par rapport à la première. Par exemple, si vous souhaitez le placer à droite, utilisez ce qui suit :

    sp2 := image.Point{img1.Bounds().Dx(), 0}
    Copier après la connexion
  3. Créez un grand rectangle :
    Calculez un rectangle qui couvre les deux images :

    r := image.Rectangle{image.Point{0, 0}, r2.Max}
    Copier après la connexion
  4. Créer une nouvelle image :
    Créer une nouvelle image suffisamment grande pour contenir les deux images :

    rgba := image.NewRGBA(r)
    Copier après la connexion
  5. Dessinez les images :
    Utilisez la fonction Dessiner pour placer les images sur la nouvelle image :

    draw.Draw(rgba, img1.Bounds(), img1, image.Point{0, 0}, draw.Src)
    draw.Draw(rgba, r2, img2, sp2, draw.Src)
    Copier après la connexion
  6. Enregistrer la sortie :
    Exporter l'image combinée :

    out, err := os.Create("./output.jpg")
    jpeg.Encode(out, rgba, &jpeg.Options{
       Quality: 80,
    })
    Copier après la connexion

En suivant ces étapes, vous pouvez créer une seule image composée de plusieurs images, en l'agrandissant vos capacités de manipulation d'images dans Go.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal