Bonjour tout le monde,
Je tourne depuis une semaine sur un problème plutôt épineux, peut-être connaîtriez-vous une solution ?
Je travaille actuellement sur une librairie de gestion d'imprimantes. J'utilise la classe PrintDocument. Comme vous le savez sûrement, pour gérer l'impression d'une page, on récupère un Graphics à chaque appel de l’évènement d'impression d'une page.
Sur cette page, on imprime du texte et des images. Pour gérer la transparence de ces éléments, on joue sur la couleur alpha.
Pour les images, on modifie l'élément 3,3 de la ColorMatrix. Cette ColorMatrix est ensuite attribuée à un ImageAttributes.
On passe ensuite cet ImageAttributes au Graphics précédemment nommé lors de l'appel de la fonction drawImage().
Je ne rencontre aucun problème pour la transparence de texte, mais malheureusement les images se contentent de se ternir, sans que l'on puisse voir ce qu'il y a derrière. Voici une image qui illustre mon propos :
Le texte en bleu est bien transparent, mais l'image de guépard a juste perdu en opacité, sans nous montrer ni l'image qui est derrière, ni la barre verte, ni le texte.
J'ai tenté de modifier la couleur du background pour voir si la transparence de l'image ne s'appliquait qu'au background du Graphics, mais non : avec un background tout rouge, la transparence nous donne toujours 2 guépards légèrement terne, mais sans rouge dans le fond.
Je n'ai plus trop d'idée, quelqu'un a-t-il un début de commencement de piste?
Partager