Je veux mettre en place une fonction caoutchouc tout comme photoshop, mais j'espère que le caoutchouc vient effacer les formes qui ont dessiné sur fond sans modifier l'arrière-plan. Maintenant, l'arrière-plan est une image, donc je ne peux pas utiliser le pinceau avec la couleur unique.Comment implémenter une couche avec GDI?
Répondre
Vous devez stocker chaque couche de l'image dans son propre tampon, puis les combiner pour la sortir. L'arrière-plan serait donc dans un objet Image et la forme dans un autre objet Image. Lorsque vous obtenez le message WM_Paint, vous devez combiner les deux images en une seule et en sortir (ou vous devez avoir les images pré-combinées dans un troisième objet Image en mémoire).
Si vous voulez simplement dessiner des lignes/formes simples comme une boîte de bandes de caoutchouc, la façon traditionnelle est d'utiliser des peintures exclusives. Cela "inverse" les couleurs sur lesquelles il est dessiné, ainsi dessiner la même forme une seconde fois l'efface et renvoie l'image originale.
De nos jours, les ordinateurs sont beaucoup plus puissants et nous avons tendance (comme Dave Markle) à combiner deux images séparées sur l'écran (il suffit de stocker l'image que vous éditez dans un bitmap hors écran). Cela vous permet de dessiner la superposition en utilisant n'importe quelle couleur/transparence, de sorte que vous pouvez le rendre beaucoup plus agréable.
- 1. Comment implémenter une couche de sécurité sur .net WS?
- 2. Est-ce que GDI + est juste une couche au-dessus de GDI, ou quelque chose de nouveau?
- 3. Calques avec GDI +
- 4. Meilleure pratique - Comment implémenter une couche d'authentification d'utilisateur avec plusieurs services?
- 5. Comment implémenter la fonction Chord avec GDIplus?
- 6. Comment dessiner une ligne douce dans gdi/gdi +
- 7. Effacement de pixels avec .Net GDI +
- 8. GDI + avec C++ Builder?
- 9. superposition d'images avec GDI +
- 10. Utiliser gdi + avec InteropBitmap
- 11. Floodfill remplacer avec GDI?
- 12. Redimensionnement d'image avec GDI +
- 13. Comment faire défiler légitimement avec GDI +?
- 14. Comment implémenter avec une boucle java?
- 15. Comment implémenter des graphismes 3D haute performance avec WPF?
- 16. Dessiner avec GDI + sous IIS
- 17. Comment afficher une image en utilisant GDI?
- 18. Dessin avec GDI et texte avec Qt
- 19. Validation avec une couche de service, comment mettre à jour une entité
- 20. images flottantes dans une couche, à l'intérieur une autre couche
- 21. GDI & Hardware Cursor
- 22. pixellisation une couche GDAL
- 23. comment remplir gradient pour roundrect en gdi pur (pas gdi +)
- 24. Comment animer une propriété non-couche?
- 25. Dessiner une image avec transparence personnalisée dans GDI +
- 26. Comment implémenter une interface IComparable?
- 27. Comment implémenter l'annulation avec NSUndoManager?
- 28. Comment implémenter Memcached avec PDO
- 29. C# ajouter une couche à une image
- 30. Comment utiliser le framework d'entité dans une couche de gestion et/ou une couche de données?