저급 프로그래머의 도움을 주시면 고맙겠습니다. 내 문제는 다음과 같습니다. 비디오 메모리에 ARGB8888 형식의 비트 맵을 직접 인쇄하려고합니다. 비트 맵의 형식은 괜찮습니다. 문제는 알파 채널입니다. 사용 방법을 알 수 없습니다. 내가 일을하고있어 각 바이트를 복사 1.이 각 채널 RG B. 수행됩니다 -PNG의 알파 투명도를 메모리에서 직접 처리하는 방법은 무엇입니까?
컬러가 0에 따라 다릅니다CompositedPixelColor = Alpha * ForegroundPixelColor + (1 - Alpha) * BackgroundPixelColor
:이 같은 픽셀을 오버레이 위키 피 디아에있는 코드를 본 적이 위의 수식을 사용하여 비디오 메모리에 직접 내 비트 맵의 각 픽셀의 각 색,하지만 색상이 자신을 괜찮아 제시하지 않기 때문에 뭔가를 놓치고있어.
이 스레드에 게시 된 코드와 같은 작업을하려고합니다. http://www.badadev.com/create-a-photo-editing-app/ 하지만 여기에서는 투명도를 처리하지 않으며 이것이 내 문제입니다. 고맙습니다!
아, 팁은 고맙습니다. 나는 문제를 알아 냈다. RGBA 값은 ABGR 형식으로 메모리에 저장됩니다. 그러나 당신의 코드는 계산을 향상시켜야 할 것을 생각 나게합니다 : >> 8 Thx 많이 – HugoFS