Maison > développement back-end > Golang > Comment puis-je superposer et faire pivoter des images dans Golang ?

Comment puis-je superposer et faire pivoter des images dans Golang ?

Susan Sarandon
Libérer: 2024-11-27 15:08:18
original
348 Les gens l'ont consulté

How Can I Overlay and Rotate Images in Golang?

Manipulation d'images dans Golang

Dans Golang, la manipulation d'images est possible grâce au package image. Ce package fournit les outils nécessaires pour dessiner, redimensionner et transformer des images.

Contexte du problème

Considérez trois images : une image d'arrière-plan (bi) et deux autres images (i1 et i2). L'objectif est de positionner i1 et i2 sur bi à des angles spécifiques, garantissant un placement correct en fonction de leurs valeurs d'index z.

Solution

Pour y parvenir, Golang propose le package Graphics-go, qui prend en charge les rotations d’images. Le pseudo-programme suivant présente la solution :

import (
    "image"
    "image/jpeg"
    "os"
    "code.google.com/p/graphics-go/graphics"
)

func main() {
    // Load the images
    img1, _, _ := image.Decode(os.Open("image1.jpg"))
    img2, _, _ = image.Decode(os.Open("image2.jpg"))

    // Create a new image canvas
    m := image.NewRGBA(image.Rect(0, 0, 800, 600))

    // Draw the background image
    draw.Draw(m, m.Bounds(), img1, image.Point{0, 0}, draw.Src)

    // Apply rotation to the second image
    graphics.Rotate(m, img2, &graphics.RotateOptions{Angle: 3.5})

    // Save the final image
    jpeg.Encode(os.Create("final-image.jpg"), m, &jpeg.Options{jpeg.DefaultQuality})
}
Copier après la connexion

Remarques :

  • Le package image fournit des fonctionnalités pour dessiner et transformer des images.
  • Le graphisme-go Le package offre une prise en charge supplémentaire pour les rotations d'images.
  • Le pseudo-programme fourni démontre les principes de base de la manipulation d'images dans Golang.

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