2013-03-30 3 views
2

임의의 혼합을 사용하여 반투명 PNG를 단일 색상으로 오버레이하고 알파를 유지할 수 있기를 원합니다.반투명 PNG의 임의의 블렌딩, iOS의 알파 유지

나는이 솔루션 알고 있어요 :

How to tint a transparent PNG image in iPhone?

불행하게도, DestinationIn/SourceOut/알파 지역의 모든 디스플레이에 띄는 시각적 유물 마스크. 그래픽 레이어링 때 특히 눈에 띄는입니다 : 코어 그래픽을 사용

Example on the difference

을 제외하고

을, 나는 CIMultiplyCompositing의 모든 유물을 표시하지 않습니다 CoreImage에를 시도하지만, 다른 코어 그래픽 혼합 모드에 대응하는 필터가없는 한 (예 : 화면 및 오버레이)

GPUImage도 사용했지만 시각적 인 결함은 라이브러리의 버그 인 것 같습니다.

답변

0

문제를 일으키는 GPUImage의 버그를 발견하고 수정했습니다. 그런 다음 모든 블렌딩을 쉐이더로 수동으로 구현했습니다.

+0

GPUImage에 고정 전화를 공유해주세요. GPUImage에서 동일한 문제가 발생합니다. 미리 곱셈 된 알파의 문제입니까? – kev

+0

@KevinHarrington 귀하의 문제는 관련이 없습니다 (미리 곱셈 된 알파에도 관련되어 있음). Stack Overflow 질문에 대한 자세한 솔루션을 제공했습니다. – Nuoji