Le meilleur moyen d'ouverture/fermeture en fondu de l'image
Quel est le meilleur (le moins de ressources lourd) de façon à s'estomper une image toutes les 20 secondes avec une durée de 1 seconde, sur un fond noir (économiseur d'écran), en C# ?
(une image sur 350x130px).
J'en ai besoin pour un simple économiseur d'écran qui va s'exécuter sur certains bas niveau des ordinateurs (xp).
Droit maintenant, je suis en utilisant cette méthode, contre une pictureBox, mais c'est trop lent:
private Image Lighter(Image imgLight, int level, int nRed, int nGreen, int nBlue)
{
Graphics graphics = Graphics.FromImage(imgLight);
int conversion = (5 * (level - 50));
Pen pLight = new Pen(Color.FromArgb(conversion, nRed,
nGreen, nBlue), imgLight.Width * 2);
graphics.DrawLine(pLight, -1, -1, imgLight.Width, imgLight.Height);
graphics.Save();
graphics.Dispose();
return imgLight;
}
Vous devez vous connecter pour publier un commentaire.
Vous pourriez probablement utiliser une Matrice de Couleurs comme dans cet exemple sur msdn
http://msdn.microsoft.com/en-us/library/w177ax15%28VS.71%29.aspx
Au lieu d'utiliser un Stylo et du DrawLine() la méthode, vous pouvez utiliser Bitmap.LockBits pour accéder à la mémoire de votre image directement. Voici un bonne explication de la façon dont il fonctionne.
Mettre une Minuterie sur votre formulaire, et dans le constructeur, ou le Form_Load,
écrire
Ajouter une méthode privée
Voici mon point de vue sur cette
Il est aussi recommandé de créer un autre fil, car cela va geler votre principale.