즉시 RGB, 헥스, CMYK 및 HSV 변환이 가능한 무료 온라인 색상 선택기. 스펙트럼을 클릭하여 색상을 시각적으로 선택하거나 정확한 값을 입력하세요. 웹 디자인, 인쇄 및 디지털 프로젝트를 위해 한 번의 클릭으로 모든 형식을 복사할 수 있습니다.
프로젝트에 완벽한 색상이 필요하신가요? 이 컬러 피커를 사용하면 RGB, 헥스, CMYK, HSV 형식 간에 색상을 즉시 선택, 미리보기, 변환할 수 있습니다. 웹사이트 코딩, 로고 디자인, 인쇄 파일 준비 등 어떤 작업을 하든 정확한 색상 값을 쉽게 찾을 수 있습니다 - 추측이나 여러 도구 간 전환 없이.
색상 스펙트럼의 아무 곳이나 클릭하여 색상을 선택하고, 슬라이더로 밝기를 조절하거나 정확한 값을 직접 입력할 수 있습니다. 모든 형식은 실시간으로 업데이트되며, 한 번의 클릭으로 모든 색상 코드를 복사할 수 있습니다.
다른 프로젝트는 다른 색상 형식이 필요합니다. 각각의 용도와 사용 시기는 다음과 같습니다:
RGB는 빨강, 초록, 파랑 빛을 혼합하여 작동합니다 - 현재 화면에서 색상을 표시하는 방식과 동일합니다. 각 구성 요소는 0에서 255 사이입니다:
RGB 사용 시기: 웹사이트, 모바일 앱, 비디오 편집 또는 화면 기반 그래픽 등 모든 디지털 작업. 디스플레이의 고유 언어이기 때문에 CSS와 같은 도구가 rgb() 및 rgba() 함수를 직접 지원합니다. W3C CSS 색상 모듈 사양에 따르면 RGB는 웹 표준의 기본 색상 모델입니다.
Hex 코드는 단순히 RGB 값을 10진수 대신 16진수로 표현한 것입니다. Hex 색상은 #FF5733과 같이 보입니다:
# 기호는 Hex 코드임을 표시합니다#FF0000 = 빨강, #00FF00 = 초록, #0000FF = 파랑때로는 #FF0000 대신 #F00과 같은 3자리 축약형을 볼 수 있습니다 - 각 색상 채널의 숫자가 반복될 때 작동합니다.
Hex 사용 시기: 웹 개발이 주요 사용 사례입니다. CSS는 항상 Hex 표기법을 지원했으며, 대부분의 개발자는 rgb() 보다 빠르게 입력할 수 있습니다. 일반적인 실수: # 기호를 잊으면 브라우저가 유효한 색상으로 인식하지 못해 스타일이 조용히 깨집니다.
CMYK는 프린터에서 사용하는 색상 모델입니다. RGB와 달리 (빛을 추가하는 대신) 빛을 빼는 방식으로 흰 종이에 잉크를 혼합하여 색상을 만듭니다:
CMYK 사용 시기: 명함, 브로셔, 잡지, 포장 등 인쇄용 디자인. 현실적인 점검: 많은 선명한 RGB 색상은 CMYK 잉크로 재현할 수 없습니다. 화면에서 보이는 밝은 전기 파란색은 인쇄 시 더 흐릿해 보일 것입니다. 전문 디자이너는 항상 인쇄 전에 CMYK 변환을 미리 보고 놀라움을 피합니다.
HSV는 색상을 세 가지 직관적인 구성 요소로 나눕니다:
HSV가 중요한 이유: 인간이 자연스럽게 색상을 생각하는 방식과 일치합니다. 더 어두운 파란색을 원하나요? 명도를 낮추세요. 덜 강렬한 파란색을 원하나요? 채도를 낮추세요. 이렇게 HSV는 색상 스펙트럼에서 색상을 선택하고 슬라이더로 밝기를 조정하는 대화형 색상 선택기에 이상적입니다.
색상 선택기는 다음 수학적 공식을 사용하여 다양한 색상 모델 간에 자동으로 변환합니다:
RGB를 16진수로 변환하려면:
여기서 toHex()는 10진수를 해당 16진수 표현으로 변환합니다.
RGB에서 CMYK로의 변환은 다음 단계를 포함합니다:
RGB를 HSV로 변환:
색상(H)의 경우:
0° & \text{if } \Delta = 0 \\ 60° \times (\frac{G' - B'}{\Delta} \mod 6) & \text{if } C_{max} = R' \\ 60° \times (\frac{B' - R'}{\Delta} + 2) & \text{if } C_{max} = G' \\ 60° \times (\frac{R' - G'}{\Delta} + 4) & \text{if } C_{max} = B' \end{cases}$$ 채도(S)의 경우: $$S = \begin{cases} 0 & \text{if } C_{max} = 0 \\ \frac{\Delta}{C_{max}} \times 100\% & \text{otherwise} \end{cases}$$ 값(V)의 경우: $$V = C_{max} \times 100\%$$ ## 색상 선택기 사용 방법 색상 작업에는 세 가지 방법이 있습니다: 스펙트럼을 클릭하거나, 정확한 값을 입력하거나, 슬라이더로 조정할 수 있습니다. 워크플로우에 가장 자연스러운 방법을 선택하세요. ### 시각적으로 색상 선택하기 **색상 스펙트럼**의 아무 곳이나 클릭하여 음영을 선택하세요. 수평 위치는 색상(빨강, 초록, 파랑 등)을 선택하고, 수직 위치는 채도(선명한 vs. 흐린)를 제어합니다. 미리보기가 즉시 업데이트되어 정확히 무엇을 얻고 있는지 볼 수 있습니다. 스펙트럼 아래의 **밝기 슬라이더**를 드래그하여 색상을 더 밝거나 어둡게 만드세요. 이는 HSV 용어로 "값" 구성 요소를 조정합니다 - 왼쪽으로 어둡게, 오른쪽으로 밝게 조정됩니다. ### 정확한 색상 값 입력하기 이미 필요한 색상을 알고 있나요? 직접 입력하세요: **16진수 형식:** `#FF5733`과 같은 코드를 입력하세요. `#`을 포함하거나 생략할 수 있습니다 - 도구가 둘 다 처리합니다. 3자리 약식 코드(`#F37`)도 작동합니다. **RGB 형식:** 빨강, 초록, 파랑에 대해 0-255 사이의 값을 입력하세요. 실수로 300을 입력하면 자동으로 255로 제한됩니다. **CMYK 형식:** 각 잉크 구성 요소에 대해 퍼센트(0-100)를 입력하세요. 인쇄 디자이너의 사양과 색상을 일치시킬 때 유용합니다. 모든 형식은 실시간으로 다른 형식을 업데이트합니다. 16진수 코드를 변경하면 RGB/CMYK가 자동으로 조정됩니다. ### 색상 코드 복사하기 모든 색상 형식 옆의 복사 버튼(클립보드 아이콘)을 클릭하세요. 빠른 "복사됨!" 확인 메시지가 표시된 후 CSS 파일, 디자인 소프트웨어, 문서 등 필요한 곳에 값을 붙여넣을 수 있습니다. **프로 팁:** 여러 파일이나 애플리케이션에서 작업할 때는 브라우저 탭에 이 도구를 열어 두세요. 컨텍스트를 전환하지 않고도 색상 값을 빠르게 참조하고 복사할 수 있습니다. ## 실제 사용 사례 ### 웹 개발 다크 모드 토글을 구축하고 색상 변형이 필요한 경우, 브랜드의 기본 색상을 16진수 형식(예: `#3B82F6`)으로 시작한 후, 밝기 슬라이더를 사용하여 배경(`#1E3A8A`)을 위한 더 어두운 버전과 호버 상태(`#60A5FA`)를 위한 더 밝은 버전을 생성합니다. 각 16진수 코드를 직접 CSS 사용자 지정 속성에 복사하세요. 투명도로 작업할 때, RGB 값을 가져와 `rgba()` 함수에 사용합니다. 예를 들어, `rgb(59, 130, 246)`는 80% 불투명도 오버레이의 경우 `rgba(59, 130, 246, 0.8)`가 됩니다. 일반적인 시나리오: 클라이언트가 RGB로 지정된 색상의 Figma 디자인을 제공하지만, CSS에서는 16진수 코드를 선호하는 경우, 수동으로 계산하는 대신 여기서 변환하세요. ### 인쇄용 그래픽 디자인 여기서 CMYK가 중요해집니다. 화면에서 RGB 색상으로 생생한 포스터를 디자인했지만, 인쇄소에 보내기 전에 CMYK 값을 확인하세요. 선택한 전기 청록색(RGB 0, 255, 255)은 CMYK(100, 0, 0, 0)로 변환되며 괜찮아 보입니다. 하지만 밝은 화면 녹색(RGB 0, 255, 0)은 인쇄 시 눈에 띄게 변할 수 있습니다. 전문적인 워크플로우: 여기에 화면 색상을 입력하고, CMYK 변환을 확인한 후, 디자인 소프트웨어의 CMYK 미리보기 모드에서 시각적으로 비교하세요. 색상이 너무 많이 변경되면 디자인을 최종 확정하기 전에 선택을 조정하세요. 이렇게 하면 인쇄소와의 "화면에서는 다르게 보였어요" 대화를 방지할 수 있습니다. ### UI/UX 디자인 시스템 일관된 색상 스케일을 만들려면 기본 색상으로 시작한 후 다른 UI 상태에 대해 5-10개의 밝기 변형을 만듭니다. 밝기 슬라이더를 사용하면 정신적 계산 없이 빠르게 작업할 수 있습니다. 접근성을 위해 텍스트와 배경 사이에 충분한 대비가 필요합니다. 이 도구는 대비율을 계산하지 않지만(이를 위해서는 전용 [WCAG 대비 검사기](https://www.w3.org/WAI/WCAG21/Understanding/contrast-minimum.html)가 필요합니다), 작동하는 조합을 찾을 때까지 다양한 음영을 빠르게 테스트할 수 있습니다. 실제 시나리오: 기본 버튼이 `#2563EB`를 사용하지만 해당 배경의 텍스트가 대비 요구 사항을 충족하지 못합니다. 배경을 밝게 하거나 텍스트를 어둡게 하세요 - 미리보기를 사용하여 옵션을 즉시 테스트하세요. ### 디지털 아트 및 일러스트레이션 디지털 페인팅 작업 중 일관된 색상 조화가 필요한가요? 스펙트럼에서 기본 색조를 선택한 후, 채도와 밝기만 조정하여 변형을 만듭니다. 이렇게 하면 임의의 색상 변화 없이 팔레트를 일관되게 유지할 수 있습니다. 많은 디지털 아티스트들은 페인팅 중 참조 색상을 빠르게 잡고 변환할 수 있도록 색상 선택기를 열어 둡니다. 참조 사진에서 완벽한 그림자 톤을 발견했나요? 여기서 클릭하고(다른 곳에서 값을 추출한 경우) RGB를 가져와 Photoshop, Procreate 또는 Krita에 붙여넣으세요. ### 색상 교육 및 실험 색상 모델이 어떻게 관련되는지 이해하고 싶나요? 모든 색상을 선택하고 RGB, 16진수, CMYK, HSV에서 값이 어떻게 변하는지 확인하세요. 순수한 빨간색(RGB 255, 0, 0)이 `#FF0000`과 같지만, CMYK 등가는 0, 100, 100, 0으로 완전히 다른 숫자가 같은 지각된 색상을 나타냅니다. 이러한 시각적 피드백은 학생들이 RGB가 가산 혼합(빛 결합)을 사용하는 반면 CMYK는 감산 혼합(잉크 결합)을 사용하는 이유를 이해하는 데 도움이 됩니다. 대화형 특성은 추상적 개념을 이해하기 쉽게 만듭니다. ## 필요할 수 있는 기타 색상 도구 이 도구는 개별 색상을 선택하고 변환하는 데 중점을 둡니다. 프로젝트에 따라 다음과 같은 도구도 필요할 수 있습니다: **팔레트 생성기**(Adobe Color, Coolors)는 색상 이론에 기반한 여러 조화로운 색상이 필요할 때 유용합니다. 보색, 삼색, 또는 유사 색상 구성표를 만들 수 있습니다. **브라우저 확장 프로그램**(ColorZilla, Eye Dropper)을 사용하면 웹페이지나 화면 요소에서 직접 색상을 추출할 수 있습니다. 기존 디자인과 일치시키는 데 탁월합니다. **대비 검사기**는 접근성 작업에 필요합니다. [WebAIM 대비 검사기](https://webaim.org/resources/contrastchecker/)는 텍스트/배경 조합이 WCAG 표준을 충족하는지 테스트합니다. **팬톤/RAL 시스템**은 다양한 인쇄소와 재료 간에 정확한 인쇄 색상 매칭에 사용됩니다. 이러한 물리적 견본책은 디지털 도구로 정확히 복제할 수 없는 표준화된 참조를 제공합니다. ## 색상의 접근성 만들기 남성의 약 8%와 여성의 0.5%가 일종의 색각 이상을 가지고 있습니다. 포용적으로 디자인하는 방법은 다음과 같습니다: **절대로 의미를 전달하는 데 색상만 사용하지 마세요.** 양식에서 오류를 빨간색으로 표시한다면, 아이콘이나 텍스트 레이블도 추가하세요. 다른 색상의 선이 있는 차트의 경우? 패턴, 레이블 또는 둘 다를 추가하세요. **[WebAIM 대비 검사기](https://webaim.org/resources/contrastchecker/)와 같은 도구를 사용하여 대비율을 확인하세요.** 일반 텍스트는 배경에 대해 최소 4.5:1의 비율이 필요하며, 큰 텍스트는 3:1이 필요합니다. [WCAG 2.1 지침](https://www.w3.org/WAI/WCAG21/Understanding/contrast-minimum.html)에 따르면, 이는 중간 정도의 저시력 사용자를 위한 가독성을 보장합니다. **문제가 되는 조합을 피하세요:** 적록색각(적색과 녹색 인식에 영향을 미치는 제1색각과 제2색각)이 가장 흔한 문제입니다. 청황색각은 삼색각 사용자에게 문제를 일으킵니다. [Coblis](https://www.color-blindness.com/coblis-color-blindness-simulator/)와 같은 시뮬레이터로 디자인을 테스트하여 다양한 색각 이상 사용자에게 어떻게 보이는지 확인하세요. **가능하다면 색맹 친화적인 팔레트를 사용하세요.** 파란색, 주황색, 노란색은 대부분의 색각 이상 유형에서 구별 가능하기 때문에 일반적으로 잘 작동합니다. ## 자주 묻는 질문 ### RGB와 CMYK의 차이점은 무엇인가요? RGB는 화면용, CMYK는 인쇄용입니다. 화면은 빨강, 녹색, 파랑 빛을 방출하여 색상을 만들고(가산 혼합), 프린터는 종이에 청록색, 자홍색, 노랑, 검정 잉크를 겹쳐 색상을 만듭니다(감산 혼합). RGB는 빛의 색 범위가 잉크보다 넓어 더 밝고 선명한 색상을 만들 수 있습니다. 그래서 화면의 색상이 인쇄했을 때 종종 더 흐리게 보입니다. ### 인쇄했을 때 색상이 다르게 보이는 이유는? 화면은 빛을 방출하고, 종이는 빛을 반사하는 근본적으로 다른 과정입니다. 또한 RGB는 CMYK 잉크가 재현할 수 없는 수백만 가지 색상을 처리합니다. 화면 보정, 종이 품질, 잉크 변형 등이 더 많은 변동성을 추가합니다. 항상 인쇄 전 CMYK 값을 확인하고, 중요한 색상 일치 작업에는 실물 교정을 요청하세요. ### 온라인에서 본 색상의 16진수 코드를 어떻게 얻나요? 브라우저의 개발자 도구를 사용하세요. Chrome이나 Firefox에서 요소를 마우스 오른쪽 버튼으로 클릭하고 "검사"를 선택한 후, 스타일 패널의 작은 색상 사각형을 클릭하세요. 이렇게 하면 16진수 코드를 보여주는 색상 선택기가 열립니다. ColorZilla 같은 브라우저 확장 프로그램은 이 과정을 더 빠르게 만들어 페이지의 아무 곳이나 클릭해 색상 값을 얻을 수 있게 합니다. ### 16진수 코드에서 # 기호는 무엇을 의미하나요? 브라우저에게 "이것은 16진수 색상 코드입니다"라고 알려주는 접두사입니다. 이 표준은 초기 HTML 및 CSS 사양에서 비롯되었습니다. `#` 뒤의 여섯 문자는 16진수 기반의 RGB 값을 나타냅니다: 빨강 2자리, 녹색 2자리, 파랑 2자리. `#`이 없으면 브라우저는 이를 색상으로 인식하지 못합니다. ### 3자리 16진수 코드는 왜 작동하나요? 각 색상 채널이 반복될 때 사용하는 축약 표기법입니다. `#F00`은 `#FF0000`(빨강)으로, `#C9C`는 `#CC99CC`(연한 보라)로 확장됩니다. 이 축약 표기법은 대역폭이 비쌌던 1990년대에 파일 크기를 줄이기 위해 만들어졌습니다. 오늘날에도 간단한 색상에 여전히 편리합니다. ### 색상 변환은 정확한가요? RGB에서 16진수로의 변환은 수학적으로 정확합니다. RGB에서 CMYK로의 변환은 근본적으로 다른 색상 공간(빛 vs 잉크) 간 변환이므로 근사값입니다. 이 도구는 전문 디자인 소프트웨어와 동일한 [ICC 색상 프로필 표준](http://www.color.org/specification/ICC1v42_2006-05.pdf)을 사용하여 이러한 변환을 수행합니다. ### 접근성 있는 색상 조합을 어떻게 만드나요? 색상을 선택한 후 [WebAIM의 도구](https://webaim.org/resources/contrastchecker/)와 같은 대비 검사기를 사용하세요. 일반 텍스트는 4.5:1, 큰 텍스트는 3:1 비율이 필요합니다. 적록 색상 조합은 피하세요(색맹 사용자에게 가장 어려움). 확신이 서지 않으면 밝은 배경에 어두운 텍스트 또는 그 반대—충분한 휘도 차이가 가장 중요합니다. ### 이미지에서 색상을 선택할 수 있나요? 이 도구에서는 직접 불가능합니다. ColorZilla 같은 브라우저 확장 프로그램을 사용하거나, 이미지를 스크린샷 찍고 운영 체제의 색상 선택기(macOS의 디지털 색상 측정기, Windows의 PowerToys 색상 선택기)를 사용하세요. 색상 값을 얻은 후 여기에 입력하여 형식 간 변환이 가능합니다. ### 일부 RGB 색상이 CMYK로 잘 변환되지 않는 이유는? CMYK는 RGB보다 좁은 "색역"(재현 가능한 색상 범위)을 가집니다. 밝은 파랑, 선명한 녹색, 전기 오렌지 등은 CMYK 잉크가 물리적으로 만들 수 없는 색상에 속합니다. 이런 경우 프린터는 가능한 가장 가까운 색상으로 대체하며, 이는 보통 덜 선명하게 보입니다. 전문 인쇄 디자이너들은 이 문제를 피하기 위해 CMYK에서 안전한 색상으로 시작합니다. ## 색상 변환을 위한 코드 예시 다음은 다른 색상 형식 간 변환 방법을 보여주는 코드 예시입니다:1// RGB에서 Hex로 변환
2function rgbToHex(r, g, b) {
3 const toHex = (c) => {
4 const hex = Math.round(c).toString(16);
5 return hex.length === 1 ? '0' + hex : hex;
6 };
7
8 return `#${toHex(r)}${toHex(g)}${toHex(b)}`;
9}
10
11// Hex에서 RGB로 변환
12function hexToRgb(hex) {
13 // 존재할 경우 # 제거
14 const cleanHex = hex.startsWith('#') ? hex.slice(1) : hex;
15
16 // 3자리 및 6자리 hex 처리
17 const expandedHex = cleanHex.length === 3
18 ? cleanHex.split('').map(char => char + char).join('')
19 : cleanHex;
20
21 const r = parseInt(expandedHex.substring(0, 2), 16);
22 const g = parseInt(expandedHex.substring(2, 4), 16);
23 const b = parseInt(expandedHex.substring(4, 6), 16);
24
25 return { r, g, b };
26}
27
28// RGB에서 CMYK로 변환
29function rgbToCmyk(r, g, b) {
30 // RGB 값 정규화
31 const normalizedR = r / 255;
32 const normalizedG = g / 255;
33 const normalizedB = b / 255;
34
35 // K(검정) 계산
36 const k = 1 - Math.max(normalizedR, normalizedG, normalizedB);
37
38 // 순수 검정 처리
39 if (k === 1) {
40 return { c: 0, m: 0, y: 0, k: 100 };
41 }
42
43 // C, M, Y 계산
44 const c = ((1 - normalizedR - k) / (1 - k)) * 100;
45 const m = ((1 - normalizedG - k) / (1 - k)) * 100;
46 const y = ((1 - normalizedB - k) / (1 - k)) * 100;
47
48 return {
49 c: Math.round(c),
50 m: Math.round(m),
51 y: Math.round(y),
52 k: Math.round(k * 100)
53 };
54}
55
56// 사용 예시
57const rgb = { r: 255, g: 0, b: 0 }; // 순수 빨강
58console.log(`Hex: ${rgbToHex(rgb.r, rgb.g, rgb.b)}`);
59console.log(`CMYK:`, rgbToCmyk(rgb.r, rgb.g, rgb.b));
601# RGB에서 Hex로 변환
2def rgb_to_hex(r, g, b):
3 return f'#{r:02x}{g:02x}{b:02x}'
4
5# Hex에서 RGB로 변환
6def hex_to_rgb(hex_color):
7 # 존재할 경우 # 제거
8 hex_color = hex_color.lstrip('#')
9
10 # 3자리 및 6자리 hex 처리
11 if len(hex_color) == 3:
12 hex_color = ''.join([c*2 for c in hex_color])
13
14 return {
15 'r': int(hex_color[0:2], 16),
16 'g': int(hex_color[2:4], 16),
17 'b': int(hex_color[4:6], 16)
18 }
19
20# RGB에서 CMYK로 변환
21def rgb_to_cmyk(r, g, b):
22 # RGB 값 정규화
23 r_norm = r / 255
24 g_norm = g / 255
25 b_norm = b / 255
26
27 # K(검정) 계산
28 k = 1 - max(r_norm, g_norm, b_norm)
29
30 # 순수 검정 처리
31 if k == 1:
32 return {'c': 0, 'm': 0, 'y': 0, 'k': 100}
33
34 # C, M, Y 계산
35 c = ((1 - r_norm - k) / (1 - k)) * 100
36 m = ((1 - g_norm - k) / (1 - k)) * 100
37 y = ((1 - b_norm - k) / (1 - k)) * 100
38
39 return {
40 'c': round(c),
41 'm': round(m),
42 'y': round(y),
43 'k': round(k * 100)
44 }
45
46# 사용 예시
47rgb = {'r': 0, 'g': 128, 'b': 255} # 하늘색
48hex_color = rgb_to_hex(rgb['r'], rgb['g'], rgb['b'])
49cmyk = rgb_to_cmyk(rgb['r'], rgb['g'], rgb['b'])
50
51print(f"Hex: {hex_color}")
52print(f"CMYK: C={cmyk['c']}%, M={cmyk['m']}%, Y={cmyk['y']}%, K={cmyk['k']}%")
531public class ColorConverter {
2 // RGB에서 Hex로 변환
3 public static String rgbToHex(int r, int g, int b) {
4 return String.format("#%02x%02x%02x", r, g, b);
5 }
6
7 // Hex에서 RGB로 변환
8 public static int[] hexToRgb(String hexColor) {
9 // 존재할 경우 # 제거
10 if (hexColor.startsWith("#")) {
11 hexColor = hexColor.substring(1);
12 }
13
14 // 3자리 및 6자리 hex 처리
15 if (hexColor.length() == 3) {
16 String expandedHex = "";
17 for (char c : hexColor.toCharArray()) {
18 expandedHex += c + String.valueOf(c);
19 }
20 hexColor = expandedHex;
21 }
22
23 int r = Integer.parseInt(hexColor.substring(0, 2), 16);
24 int g = Integer.parseInt(hexColor.substring(2, 4), 16);
25 int b = Integer.parseInt(hexColor.substring(4, 6), 16);
26
27 return new int[]{r, g, b};
28 }
29
30 // RGB에서 CMYK로 변환
31 public static double[] rgbToCmyk(int r, int g, int b) {
32 // RGB 값 정규화
33 double normalizedR = r / 255.0;
34 double normalizedG = g / 255.0;
35 double normalizedB = b / 255.0;
36
37 // K(검정) 계산
38 double k = 1 - Math.max(Math.max(normalizedR, normalizedG), normalizedB);
39
40 // 순수 검정 처리
41 if (k == 1) {
42 return new double[]{0, 0, 0, 100};
43 }
44
45 // C, M, Y 계산
46 double c = ((1 - normalizedR - k) / (1 - k)) * 100;
47 double m = ((1 - normalizedG - k) / (1 - k)) * 100;
48 double y = ((1 - normalizedB - k) / (1 - k)) * 100;
49
50 return new double[]{
51 Math.round(c),
52 Math.round(m),
53 Math.round(y),
54 Math.round(k * 100)
55 };
56 }
57
58 public static void main(String[] args) {
59 // 사용 예시
60 int r = 75, g = 0, b = 130; // 보라색
61 String hexColor = rgbToHex(r, g, b);
62 double[] cmyk = rgbToCmyk(r, g, b);
63
64 System.out.println("Hex: " + hexColor);
65 System.out.printf("CMYK: C=%.0f%%, M=%.0f%%, Y=%.0f%%, K=%.0f%%\n",
66 cmyk[0], cmyk[1], cmyk[2], cmyk[3]);
67 }
68}
69귀하의 워크플로에 유용할 수 있는 더 많은 도구를 발견하세요.