.Net (C#)에서 이러한 종류의 형식을 사용할 수 있습니까? uTorrent가 내 앱에서 사용하는 것과 동일한 스킨 형식을 사용하고 싶지만 투명 배경을 가져올 수 없습니다. 아이디어가 있으십니까? 시간 내 주셔서 감사합니다..NET에서 32 비트 알파 블렌딩 된 BMP를 사용하는 방법
답변
PixelFormat 열거하면, 닷넷에서 만들 수있는 '비트 맵'의 형식을 나열 그래서 당신이 원하는 것 PixelFormat.Format32bppArgb :
http://msdn.microsoft.com/en-us/library/system.drawing.imaging.pixelformat.aspx
http://msdn.microsoft.com/en-us/library/3z132tat.aspx
그러나 나는 전혀 아니에요 BMP 파일 형식이 투명성을 지원하는지 확인하십시오. 따라서 파일을 대신 PNG 파일로 저장해야합니다.
당신은 두 가지 작업을 수행해야합니다
- 배경으로 폼에 비트 맵을 복사합니다.
- 픽셀 별 알파 투명도를 사용하려면 UpdateLayeredWindow (user32.dll)으로 전화하십시오.
코드는 liitle 약간 부피가 큰,하지만 여기에 소스 코드와 함께 아주 좋은 샘플 응용 프로그램입니다 : Per Pixel Alpha Blend in C#
감사합니다. 나는 그것을 시도 할 것입니다. –
BMP 형식은 알파 채널을 지원하지만, 윈도우는 그것을 무시합니다. 다행히도 형식은 비교적 간단하며 System.IO.BinaryReader를 사용하여 읽을 수 있습니다. LockBits 및 UnlockBits 메서드를 사용하여 Drawing.Bitmap을 만들어 데이터를 쓸 수 있습니다.
- 1. wxWidgets - 알파 블렌딩
- 2. 델파이 : 알파 블렌딩 기능이있는 이미지
- 3. GDI에서 픽셀 단위의 알파 블렌딩
- 4. glBlendFunc 및 알파 블렌딩
- 5. 알파 블렌딩 (gtk)
- 6. 누적 알파 블렌딩
- 7. 32 비트 RGBA 텍스처를 사용하는 glBlendFunc()
- 8. C에서 계층화 된 창에서 알파 블렌딩 된 컨트롤
- 9. 64 비트 응용 프로그램에서 32 비트 dll을 사용하는 방법
- 10. .NET에서의 32 비트 PNG 로딩
- 11. 여러 픽셀의 알파 블렌딩 공식은 무엇입니까?
- 12. Android OpenGL ES 텍스처링 - 알파 블렌딩
- 13. iPhone OpenGL ES 잘못된 알파 블렌딩
- 14. OpenGL 멀티 비트 알파 텍스처
- 15. 32 비트 RGB의 BMP 내가 BMP를 RGB 24 비트에서 32 비트 RGB BMP 이미지를 변환 할 필요가 C#을 문제
- 16. 32 비트 프로세스를 식별하는 방법
- 17. 32 비트 및 64 비트 DLL을 사용하는 Windows 서비스
- 18. 32 비트 JDK를 사용하는 Windows x64의 Tomcat
- 19. 32 비트 서버 및 32/64 비트 클라이언트가있는 서브 버전
- 20. 강제 32 비트 어셈블리 분리
- 21. 32 비트 DLL을 사용하는 64 비트 Java 응용
- 22. 32 비트 64 비트 호환
- 23. 32 비트/64 비트 OS?
- 24. Azure에 64 비트 버전의 DLL을 배포하는 방법, devbox에서 32 비트 버전을 사용하는 방법
- 25. 32 비트 라이브러리를 64 비트 프로그램에 연결
- 26. 인덱싱 된 픽셀 형식 이미지를 32 비트 이미지로 변환하는 방법?
- 27. .Net에서 uddi를 사용하는 방법
- 28. .Net에서 클립 보드를 붙여 넣기 위해 메모리에서 BMP를 PNG로 변환하십시오.
- 29. 64 비트 컴퓨터에서 32 비트 DLL 사용
- 30. 포트란 : 32 비트/64 비트 성능 이식성
샘이 맞습니다. BMP는 알파 채널을 지원하지 않습니다. 비트 맵의 투명도는 일반적으로 크로마 키 방식으로 수행됩니다 (한 색상을 100 % 투명하게 선택). PNG가 최적의 선택입니다. –