[go] 이미지 품질 설정

이미지 품질은 이미지를 저장할 때 중요한 요소입니다. 고화질 이미지를 원하는 경우에는 용량이 커질 수 있지만, 압축된 이미지를 원하거나 용량을 줄이고 싶은 경우에는 품질을 조정할 수 있습니다.

JPEG 이미지 품질 설정

JPEG 이미지의 품질을 설정하는 방법은 간단합니다. 대부분의 이미지 편집 프로그램에서는 이 옵션을 선택할 수 있습니다.

img, _ := os.Open("input.jpg")
defer img.Close()

m, _, _ := image.Decode(img)
output, _ := os.Create("output.jpg")
defer output.Close()

// 품질 설정 (0 ~ 100)
jpeg.Encode(output, m, &jpeg.Options{Quality: 80})

위의 예시에서 Quality 변수에 0에서 100 사이의 값을 설정하면 됩니다. 100에 가까울수록 높은 품질이지만 파일 크기도 커질 수 있습니다.

PNG 이미지 압축 설정

PNG 이미지는 JPEG와는 달리 무손실 압축이기 때문에 품질 설정이 없습니다. 하지만 PNG 이미지를 압축하고 싶은 경우에는 이미지의 크기를 줄이거나, 이미지를 인코딩할 때 압축 수준을 지정할 수 있습니다.

img, _ := os.Open("input.png")
defer img.Close()

m, _ := png.Decode(img)
output, _ := os.Create("output.png")
defer output.Close()

// 압축 수준 설정 (1 ~ 9)
png.Encode(output, m, &png.Encoder{CompressionLevel: png.BestCompression})

압축 수준을 낮추면 파일 크기는 줄어들지만, 이미지 품질은 떨어질 수 있습니다.

이렇게 이미지 형식에 따라 품질이나 압축 설정을 다르게 할 수 있습니다.

요약

이미지 품질과 압축 설정은 각각의 이미지 형식마다 다르게 적용됩니다. JPEG 이미지는 품질 설정, PNG 이미지는 압축 수준 설정을 통해 이미지의 크기와 품질을 조절할 수 있습니다. 애플리케이션 또는 웹사이트에서 이미지를 사용할 때, 어떤 종류의 이미지를 사용해야 하는지와 어떤 품질 설정을 해야 하는지 고려해야 합니다.

참고 문헌: