0

컬러 프로파일과 ImageMagick (Converting colors (not images) with ImageMagick)을 사용하여 CMYK 색을 RGB 값으로 변환하는 방법을 마침내 알아 냈습니다. ImageMagick CLI를 MiniMagick 젬으로 변환

는 지금은 MiniMagick를 사용하여 Rails 응용 프로그램에 다음 명령을 통합하기 위해 사투를 벌인거야 :

srgb(0%,68.0964%,93.8003%) 

어떤 아이디어 :

magick convert xc:"cmyk(255,0,0,0)" -profile USWebCoatedSWOP.icc -profile sRGB_IEC61966-2-1_black_scaled.icc -format "%[pixel:u.p{0,0}]\n" info: 

어떤 이런 식으로 뭔가를 반환해야합니까? 줄을 직접 붙이기 만해도 기쁠 것입니다. 그렇다면 그럴 수 있는지 확실하지 않습니다. MiniMagick. 또한이 플랫폼이 Heroku 플랫폼에서 얼마나 잘 작동하는지 잘 모르겠습니다.

도움을 주시면 감사하겠습니다.

+0

@ fmw42 어떻게 ImageMagick CLI 명령을 사용하고 레일즈 응용 프로그램으로 접을 수 있습니까? 까다로운 부분을 해결해 주셔서 다시 한 번 감사드립니다! – sambecker

+1

'@ sambecker' 죄송합니다. Rails/Ruby를 모르겠습니다. 그러나 최악의 경우, 일종의 서브 프로세스 호출 (PHP exec 또는 파이썬에서 ImageMagick으로의 서브 프로세스 호출과 유사)을 사용하여 ImageMagick 명령 행을 호출 할 수 있습니다. http://rmagick.rubyforge.org 또는 https://rmagick.github.io에서 RMagick도 참조하십시오. – fmw42

+0

RMagick의 루트 디렉토리는 https://github.com/rmagick/rmagick에 있습니다. – fmw42

답변

0

해결이 : 트릭 정확한 프로필 경로를 찾는했다

c = MiniMagick::Tool::Convert.new 
c.xc("cmyk(255,0,0,0)") 
c.profile(File.open("lib/assets/USWebCoatedSWOP.icc").path) 
c.profile(File.open("lib/assets/sRGB_IEC61966-2-1_black_scaled.icc").path) 
c.format("%[pixel:u.p{0,0}]\n", "info:") 
c.call 

format 메서드에서 별도의 두 번째 인수로 "info :"를 입력하십시오.

+1

당신에게 좋습니다. 다행 이군. – fmw42

0

내가 RMagick 모르지만, 단지 문서를 검토에서, 당신은에 해당하는 명령을 볼 수

https://github.com/rmagick/rmagick (rmagick installation 
https://rmagick.github.io (documentation) 
https://rmagick.github.io/usage.html#reading (creating image from color) 
https://rmagick.github.io/image1.html#add_profile (add profile) 
https://rmagick.github.io/image3.html#pixel_color (getting color at coordinate) 
+0

그건 의미가 있습니다. 나는 위의 MiniMagick을 사용하고 있으며 아주 가깝게 보인다. 왜 내 오류가 형식 메서드에서 발생하는 것 같아요? CLI 라인은 원래의 의도에 매우 충실한 것처럼 보입니다. – sambecker

+0

전에 MiniMagick을 사용하지 않았습니다. 그래서 나는 당신에게 무엇을 말할 지 모른다. 그러나 정확한 오류 메시지는 무엇입니까? Minimagick이 색상 값을보고하기 위해 -format이 수행하는 작업을 수행하는 다른 방법을 사용할 수도 있습니다. 출력을 txt : format으로 파싱하여 색상 값을 얻을 수도 있습니다. 또한 아마도'c.format ("% [pixel : u.p {0,0}] \ n", "info :")'에 대해 매개 변수를 올바르게 지정하지 않았습니다. c.format이 png에서 jpg로 이미지 형식을 변경하는 것이지 색상을보고하는 것이 아닙니다. https://stackoverflow.com/questions/8894194/retrieving-the-hex-code-of-the-color-of-a-given-pixel – fmw42

+0

해결! 위의 답변을 확인하십시오. 해결해야 할 두 가지가있었습니다. ICC 처리 및 형식 인수 분리. 도와 줘서 고마워! – sambecker

관련 문제