이미지의 색상을 바꾸어 보았지만 투명도뿐만 아니라 모든 색상으로 처리하려고하기 때문에 필요한 방식으로 작동하지 않습니다.색상별로 UIImage를 분할하고 2 개의 이미지를 만듭니다.
내가 찾고있는 것은 이미지를 가져 와서 그 이미지에서 색상 (모든 순수한 검정색을 말함)을 분리하는 방법입니다. 그런 다음 분할 된 부분을 취해 투명한 배경과 분할 된 부분으로 새 이미지를 만듭니다.
(여기는 아이디어의 예일뿐입니다.이 페이지의 스크린 샷을 찍고 싶습니다. 모든 다른 색을 투명하게 만들고, 새 이미지를 라이브러리에 저장하거나 UIImageView에 저장하십시오.)
나는 CGImageCreateWithMaskingColors를 들여다 보았지만 투명 부분에 필요한 것을 수행하지 못하는 것 같아서 colorMasking 입력이 {Rmin, Rmax, Gmin, Gmax, Bmin , Bmax} 컬러 마스크를 사용합니다. 어떤 생각이나 입력이 좋을 것입니다.
이 솔루션은 매우 근접해 있습니다. 내가 변경해야만했던 유일한 것은 무효화 된 char * 데이터에 대한 데이터입니다. 그래서 데이터의 int 값에 액세스 할 수 있습니다. 데이터가 argb가 아닌 rgba 값을 표시하므로 데이터 [pixelOffset + 3]을 데이터 [pixelOffset]로 만들었습니다. 그렇지 않으면 위대한 작품. 감사! – AtomRiot
아, 코드를 컴파일하지 않을 때의 위험. RGBA라고 생각하는 이유는'kCGImageAlphaPremultipliedFirst'가 최하위 비트가 아닌 최상위 비트에 먼저 저장하기 때문입니다. Host를 사용하는 대신 명시 적으로 엔디안을 지정하면이 시점에서 좋은 생각 일 수 있습니다. –