2012-09-07 5 views
3

RGB 값을 사용하여 div의 backgroundColor를 설정해야합니다. 나는이 방법을 얻을 수 있습니다.CMYK 값을 배경색으로 지정합니다.

<div style="width: 100px; height: 100px; background-color: rgb(255,0,0)"> 
</div> 
이제

, 나는 또한 CMYK (0,1,0.5,0) 값을 가지고 있기 때문에, 그래서 당신은 어떻게이 값과 동일 달성하는 저를 도와 드릴 수 있습니다.

이런 식으로 일하는 것이지만 이득은 없습니다.

<div style="width: 100px; height: 100px; background-color: device-cmyk(0, 1, 0.5, 0)"> 
</div> 

감사

답변

2

당신은 CSS에서 직접 할 수는 없습니다. CMYK 값을 다른 곳의 RGB 값으로 변환해야하며 (아마도 서버 측 스크립트로) CSS에서 변환 된 값을 사용해야합니다. 변환은 실제로 SVG 함수의 기능과 크게 다르지 않습니다.

2

이 PHP 함수를 사용하거나 클라이언트 스크립트 언어로 구현 유사한 알고리즘을 사용할 수 있습니다

function cmyk_to_rgb2($c, $m, $y, $k) 
{ 
    $c = (255 * $c)/100; 
    $m = (255 * $m)/100; 
    $y = (255 * $y)/100; 
    $k = (255 * $k)/100; 

    $r = round(((255 - $c) * (255 - $k))/255) ; 
    $g = round((255 - $m) * (255 - $k)/255) ; 
    $b = round((255 - $y) * (255 - $k)/255) ; 

    $o->r = $r ; 
    $o->g = $g ; 
    $o->b = $b ; 

    return $o ; 
} 

PHP, JavaScript

+1

내가 이것에 대한 미친 데모가 : http://jsbin.com/ celos/1/ –

+0

이렇게 PHP를 남용하지 마십시오. 이것이 웹 페이지가로드되기까지 오랜 시간이 걸리는 이유입니다. 네,이 작은 단편 만 측정 가능한 양만큼 속도를 늦추지 않는다는 것은 사실입니다. 그러나 코드 전체에 사용되는 다른 스 니펫에 대해 100을 곱하면 사용자가 주요로드 속도 문제를 갖게됩니다. –

관련 문제