PNG인데 그라데이션이 끊겨 보인다면? 16색 변환 결과 비교

하루보탬 편집팀

PNG인데 색띠가 보이나요? 저장 전에 색 수를 제한했는지 확인. 주제 설명용 자작 도식이며 실제 실측 결과나 앱 화면이 아닙니다.

이번 자작 그림은 PNG로 저장하기 전에 16색 팔레트로 바꾸자 원본의 색이 그대로 남지 않았습니다. 색 수는 256개에서 16개로 줄었고, 픽셀 크기는 같아도 그라데이션이 색 띠로 나뉘어 보였습니다.

팔레트 변환 과정 및 결과 확인

256×160픽셀의 RGB 그라데이션 한 장을 직접 만들었습니다. Pillow 12.3.0에서 MEDIANCUT 방식으로 색 수를 16개로 제한하고, 디더링을 끈 설정(colors=16, dither=NONE)으로 팔레트 변환한 뒤 PNG로 저장했습니다.

Pillow의 Image.quantize 공식 문서는 이 함수가 지정한 색 수의 P 모드 이미지로 변환한다고 설명하며, method의 선택지로 MEDIANCUT을 제시합니다. 여기서는 그 방식과 colors=16을 명시적으로 사용했습니다. 실제로 남은 색 수와 파일 용량은 아래 자작 그림을 변환한 뒤 측정한 값이며, 공식 문서가 이 실험 수치를 검증한 것은 아닙니다.

원본은 RGB 모드, 결과는 팔레트 모드인 P였으며 고유한 RGB 색은 256개에서 16개로 줄었습니다. 두 파일의 픽셀 크기는 모두 256×160이었습니다. 아래 그림과 두 PNG를 같은 크기로 놓고 색이 이어지는 부분과 띠의 경계를 비교해 보세요.

같은 PNG에서 연속적인 RGB 그라데이션과 16개의 색 띠로 나뉜 팔레트 변환 결과를 위아래로 배치한 자작 비교 그림
위는 RGB 원본, 아래는 저장 전에 16색 팔레트로 바꾼 결과입니다. 두 PNG의 픽셀 크기는 256×160으로 같으며, 비교 그림은 보기 좋게 배치했습니다.
실측 자료 · 하루보탬

실측에 사용한 RGB 원본과 16색 결과 PNG 내려받기: 256색 RGB 그라데이션 원본 PNG · 16색 팔레트로 변환한 결과 PNG

파일이 작아져도 원본 색은 같지 않았습니다

파일 크기는 원본 510바이트에서 결과 302바이트로 줄었습니다. 하지만 두 파일을 RGB로 다시 읽어 비교하니 39,360개 픽셀의 색 값이 달랐습니다.

파일이 작아졌다는 사실과 원본 색이 그대로 남았다는 판단은 구분해야 합니다. 이 예제에서는 픽셀 수를 줄이지 않고도 색 수와 색 값이 바뀌었습니다.

PNG 저장 전에 색 변환이 있었는지 확인하세요

PNG로 저장한 결과에서 색 띠가 눈에 띈다면 원본을 남겨 두고, 저장 전에 색 수를 제한하는 팔레트 변환을 했는지 확인해 보세요. 이번에는 그 변환을 명시적으로 거친 뒤 PNG로 저장했습니다. PNG로 저장하기만 하면 항상 색이 줄어든다는 결과는 아닙니다.

이 시험은 직접 만든 그라데이션 한 장을 위 설정으로 처리한 결과입니다. 실제 사진·다른 변환 도구·다른 앱의 기본 저장·물리 인쇄는 시험하지 않았습니다. 16색이 다른 파일에도 적합하다고 판단할 근거는 없습니다.

적용 조건과 확인 범위
  • 직접 만든 파일을 명시한 Python 도구로 처리한 결과입니다. 실제 앱 조작·물리 인쇄·다른 파일 전체의 성능은 시험하지 않았습니다.

확인일: 2026-09-11