본문 바로가기
파일 형식 백과사전

화면에서 쨍하던 초록이 인쇄물에서 칙칙해지는 이유

by 무나주 2026. 9. 24.

명함이나 전단 시안을 넘기고 실물을 받아 보면 색이 화면과 다를 때가 있습니다. 특히 로고의 밝은 초록이나 형광 계열이 눈에 띄게 가라앉아 나옵니다.

모니터 설정이나 인쇄 품질 문제가 아닙니다. 화면은 빛을 더해 색을 만들고 인쇄는 잉크로 빛을 빼서 색을 만들기 때문에, 화면이 낼 수 있는 색 중에 잉크로는 아예 낼 수 없는 색이 있습니다. 그 색들이 얼마나 끌려가는지 여덟 가지로 나눠 재 봤습니다.

RGB를 인쇄용 CMYK로 바꿨다 되돌린 실측 표. 형광 초록 0,255,0은 104,177,62로 바뀌어 거리 144만큼 틀어지고, 선명한 파랑 0,90,255는 2,110,167로 90, 쨍한 빨강 255,0,0은 226,51,44로 73, 네온 분홍 255,0,180은 230,40,131로 68 틀어진다. 반면 짙은 남색 20,30,90은 37, 하늘색 110,180,230은 16, 살구색 235,170,130은 16, 중간 회색 128,128,128은 14로 거의 그대로다. 채도가 높은 색만 크게 움직이고 사진에 흔한 색은 작게 움직인다. 측정 환경은 윈도우 11, 파이썬 3.14.6, Pillow 12.2.0

왜 왕복으로 쟀는가

변환 결과를 CMYK 수치로만 보면 얼마나 달라 보이는지 감이 오지 않습니다. 그래서 화면용 프로파일에서 인쇄용으로 바꾼 다음, 다시 화면용으로 되돌렸습니다. 되돌아온 값이 곧 인쇄물을 눈으로 볼 때의 색에 해당합니다. 원래 값과의 거리를 재면 얼마나 끌려갔는지가 숫자로 남습니다.

색 화면 RGB 되돌아온 RGB 틀어진 거리
형광 초록 0, 255, 0 104, 177, 62 144
선명한 파랑 0, 90, 255 2, 110, 167 90
쨍한 빨강 255, 0, 0 226, 51, 44 73
짙은 남색 20, 30, 90 42, 35, 61 37
하늘색 110, 180, 230 102, 177, 216 16
살구색 235, 170, 130 240, 164, 116 16
중간 회색 128, 128, 128 140, 135, 130 14

위쪽 넷과 아래쪽 셋의 차이가 거의 열 배입니다. 채도가 높은 색만 크게 끌려가고, 사진에 실제로 많이 들어 있는 피부색과 하늘색과 회색은 거의 그대로 옵니다.


형광 초록이 유독 멀리 가는 이유

형광 초록을 인쇄용으로 바꾸면 시안 65%와 옐로 100%를 섞으라는 지시가 나옵니다. 잉크 두 가지를 겹쳐서 초록을 만드는 셈인데, 겹칠수록 빛은 줄어듭니다. 화면의 초록은 초록 빛을 그대로 쏘아서 내는 색이라 애초에 잉크가 따라갈 수 있는 밝기가 아닙니다.

사진이 상대적으로 안전한 것도 같은 이유입니다. 실제 풍경과 사람 피부에는 그렇게까지 순수한 색이 잘 없습니다. 문제는 사람이 화면에서 골라 넣은 색, 그러니까 로고와 그래프와 강조 표시 쪽에서 생깁니다.

보내기 전에 확인하는 법

쓰려는 색이 잉크로 표현 가능한 범위 안에 있는지는 미리 확인할 수 있습니다. 윈도우에 기본으로 들어 있는 프로파일 두 개를 쓰면 설치할 것이 없습니다.

from PIL import Image, ImageCms

D = r"C:\Windows\System32\spool\drivers\color"
screen = ImageCms.getOpenProfile(D + r"\sRGB Color Space Profile.icm")
press = ImageCms.getOpenProfile(D + r"\RSWOP.icm")
to_press = ImageCms.buildTransform(screen, press, "RGB", "CMYK")
to_screen = ImageCms.buildTransform(press, screen, "CMYK", "RGB")

rgb = (0, 255, 0)                      # 확인할 색
one = Image.new("RGB", (8, 8), rgb)
back = ImageCms.applyTransform(
    ImageCms.applyTransform(one, to_press), to_screen)
after = back.getpixel((4, 4))
gap = sum((a - b) ** 2 for a, b in zip(rgb, after)) ** 0.5
print(f"{rgb} -> {after}, 거리 {gap:.0f}")

거리가 20 아래로 나오면 눈으로 구분하기 어려운 수준입니다. 60을 넘기면 다른 색이라고 느낄 만합니다. 색을 바꿀 수 없는 상황이라면 인쇄소에 미리 알리고 견본을 한 장 받아 보는 편이 확실합니다.

같이 보면 좋은 것

인쇄 전에 점검할 항목은 색만이 아닙니다. 같은 사진을 얼마나 크게 뽑을 수 있는지는 해상도와 화질 중 무엇을 줄일지 비교한 글에서 다뤘고, 형식을 바꾸면서 생기는 손실은 PNG를 JPG로 바꿔 잰 글 쪽에 정리해 두었습니다.

 

인쇄물에 들어갈 색은 화면에서 예뻐 보이는 색이 아니라 잉크가 낼 수 있는 색 중에서 고르는 것입니다. 사진은 그대로 두고 로고와 그래프의 형광색만 손보면 대부분 해결됩니다.

 

위 값은 윈도우 11에서 파이썬 3.14.6, Pillow 12.2.0으로 색 여덟 개를 sRGB IEC61966-2.1 에서 Agfa Swop Standard 로 바꿨다가 되돌려 얻은 것입니다. 두 프로파일 모두 윈도우에 기본 포함된 파일이고, 인쇄소가 쓰는 프로파일과 종이 종류에 따라 실제 값은 달라집니다. 거리는 RGB 세 값의 차이를 제곱해 더한 뒤 제곱근을 씌운 수치입니다.