Go에서 여러 이미지로 단일 이미지 만들기
질문:
In Go, 여러 이미지 파일(예: PNG 또는 JPEG)을 하나의 더 큰 이미지로 결합하려면 어떻게 해야 합니까?
답변:
Go에서 이미지를 연결하려면 다음 단계를 따르세요. :
이미지 로드:
img1, _, err := image.Decode(os.Open("test1.jpg")) img2, _, err := image.Decode(os.Open("test2.jpg"))
위치 결정:
첫 번째 이미지를 기준으로 두 번째 이미지를 배치할 위치를 결정합니다. 예를 들어 오른쪽에 배치하려면 다음을 사용하세요.
sp2 := image.Point{img1.Bounds().Dx(), 0}
큰 직사각형 만들기:
다음을 사용하여 직사각형을 계산하세요. 두 이미지 모두 포함:
r := image.Rectangle{image.Point{0, 0}, r2.Max}
새 이미지 만들기:
두 이미지를 모두 담을 수 있을 만큼 큰 새 이미지 만들기:
rgba := image.NewRGBA(r)
이미지 그리기:
그리기 기능을 사용하여 새 이미지에 이미지를 배치합니다.
draw.Draw(rgba, img1.Bounds(), img1, image.Point{0, 0}, draw.Src) draw.Draw(rgba, r2, img2, sp2, draw.Src)
출력 저장:
결합된 이미지 내보내기:
out, err := os.Create("./output.jpg") jpeg.Encode(out, rgba, &jpeg.Options{ Quality: 80, })
다음 단계에 따라 여러 이미지로 구성된 단일 이미지를 만들고 확장할 수 있습니다. Go의 이미지 조작 기능.
위 내용은 Go에서 여러 이미지를 하나로 결합하려면 어떻게 해야 하나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!