여러 이미지를 하나의 큰 이미지로 연결하는 것은 이미지 처리에서 일반적인 시나리오입니다. Go에서는 이미지 패키지를 사용하여 이를 달성하는 것이 간단합니다.
먼저 모든 작은 이미지를 수용할 수 있을 만큼 큰 크기의 새 이미지를 만듭니다.
newImage := image.NewRGBA(image.Rect(0, 0, totalWidth, maxHeight))
여기서 totalWidth는 작은 이미지의 너비를 합친 것이고, maxHeight는 그 중 최대 높이입니다.
다음으로, 작은 이미지를 새 이미지 위에 각각 그립니다. 영상. 각 이미지에 대한 적절한 시작점과 직사각형을 결정합니다.
for _, img := range smallerImages { offset := point{dx, 0} // offset of the current image r := img.Bounds() // rectangle of the smaller image newImage.Draw(image.Rect(offset.X, offset.Y, offset.X+r.Dx(), offset.Y+r.Dy()), img, r.Min, draw.Src) dx += r.Dx() // update the x coordinate for the next image }
마지막으로 연결된 이미지를 파일이나 스트림으로 내보냅니다.
out, err := os.Create("output.png") if err != nil { return err } if err := png.Encode(out, newImage); err != nil { return err }
위 내용은 Go 이미지 패키지를 사용하여 여러 이미지를 단일 이미지로 어떻게 연결할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!