Est-il possible d'utiliser ce type de format dans .Net (C#)? Je souhaite utiliser le même format de peau qu'uTorrent utilise dans mon application, mais je ne parviens pas à obtenir l'arrière-plan transparent. Des idées? Merci pour votre temps.Comment utiliser BMP 32 bits alpha-blended dans .Net
Répondre
L'énumération PixelFormat répertorie les formats de 'bitmaps', vous pouvez créer en .Net, donc vous voudriez PixelFormat.Format32bppArgb:
http://msdn.microsoft.com/en-us/library/system.drawing.imaging.pixelformat.aspx
http://msdn.microsoft.com/en-us/library/3z132tat.aspx
Cependant, je ne suis pas tout à fait Assurez-vous que le format de fichier BMP prend en charge la transparence. Vous devrez donc enregistrer le fichier en tant que fichier PNG.
Vous devez faire deux choses:
- Copiez votre bitmap sur le formulaire en arrière-plan.
- Appelez le UpdateLayeredWindow (user32.dll) pour activer la transparence alpha par pixel.
Le code est un peu encombrant liitle, mais voici un exemple d'application très agréable avec le code source: Per Pixel Alpha Blend in C#
merci, je vais essayer –
Bien que le format BMP prend en charge un canal alpha, Windows ignore. Heureusement, le format est plutôt simple et vous pouvez le lire en utilisant System.IO.BinaryReader puis créer un Drawing.Bitmap en utilisant les méthodes LockBits et UnlockBits pour y écrire les données.
- 1. Chargement PNG 32 bits dans .NET
- 2. Application java 64 bits à utiliser 32 bits dll
- 3. Dev .NET 32 bits par rapport à 64 bits prod
- 4. Sérialisation binaire .NET entre OS 32 bits et 64 bits
- 5. Quelqu'un peut-il me fournir une spécification du format d'image BMP 32 bits?
- 6. L'iPhone OS 64 bits ou 32 bits?
- 7. Comment exécuter une application .NET 32 bits sur un serveur Windows 64 bits?
- 8. Comment utiliser un objet COM 32 bits à partir d'un processus 64 bits?
- 9. Chargement d'un processus 32 bits dans un environnement 64 bits
- 10. Détection d'un jre 64 bits dans un navigateur 32 bits?
- 11. Mélange de code 32 bits et 16 bits avec nasm
- 12. directive C# pour indiquer 32 bits ou 64 bits construire
- 13. Compiler le projet 32 bits VS 2003 en 64 bits
- 14. Appel code 32 bits à partir de 64 bits Processus
- 15. . Console app 32 vs 64 bits
- 16. Comment déterminer ASP.NET 32 bit vs. 64 bits utilisé?
- 17. Forcer un service Windows .NET à s'exécuter en 32 bits sur une machine 64 bits
- 18. Impossible d'exécuter les applications 32 bits sur Linux 64 bits
- 19. SHGetFolderPath() 32 bits par rapport à 64 bits
- 20. Construire 32 bits avec llvm-gcc 64 bits
- 21. Puis-je charger une DLL 32 bits dans un processus 64 bits sous Windows?
- 22. Détermination de Windows 64 bits vs 32 bits
- 23. Exécution de l'application 32 bits à l'aide de com 32 bits sur une machine Windows 64 bits
- 24. 64/32 bits standard traduction du pilote dans Windows
- 25. implémentation longue et longue dans une machine 32 bits
- 26. Comment forcer une version 32 bits de Boost avec GCC?
- 27. Comment forcer MSBuild à compiler en mode 32 bits?
- 28. Comment lancer un processus Windows en 64 bits à partir d'un code 32 bits?
- 29. C# - Existe-t-il une bibliothèque mathématique flottante 32 bits?
- 30. Comment créer un fichier .bmp dans WinCE
sam est correct. BMP ne prend pas en charge un canal alpha. La transparence dans les bitmaps est généralement effectuée de manière chroma-key (sélectionnez une couleur pour qu'elle soit transparente à 100%). PNG sera le choix optimal ici. –