Découper l'image en forme de texte
J'ai besoin de découper une image en forme du texte dans une autre image. Je pense que c'est mieux indiqué dans les images.
C'est une photo d'un chat:
et c'est le texte que je souhaite découper:
L'image qui en résulte est celle-ci:
Le texte de l'image sera toujours en noir avec un fond transparent, et de la découpe, ce qui devrait aussi avoir un fond transparent. Les deux images d'entrée sera également de la même taille.
- Quoi que ce soit. Cat? Immédiat +1!
- Vous avez rempli l'intérieur "d'un" trou". Était-ce intentionnel?
- Bien repéré - non, ce n'était pas intentionnel 😉
- Ne serait pas mieux si vous avez une image et un texte à la place? ( suffit de demander )
Vous devez vous connecter pour publier un commentaire.
Créer un nouveau BufferedImage et itérer sur tous les pixels de mot chat et s'ils sont noirs, copiez le chat-les pixels de l'image de la nouvelle image.
Voici le code: (Finale du code de travail, prend en charge l'anti-alias)
double
lors du calcul denewAlpha
, il suffit de déplacer la division à la fin de la multiplication.setClip(shape)
, woot!Utilisation
GlyphVector
. UtilisationFont
classeVous pouvez obtenir le contour
Shape
de glyphe vecteur public Forme abstraitegetOutline()
Attribuer le contour
Shape
comme un élément à votreGraphics
instance.Dessiner l'image sur le graphique.
Seulement coupées forme sera rempli.
Pas de java ici, mais l'image désirée activités sont faciles à comprendre. Dans Mathematica:
a
trop! 😉Vous pouvez le faire en Java avec seulement quelques lignes de code source, à l'aide de Marvin Cadre
code source:
Tout d'abord, faire la partie noire de la "Chat" image transparente. Voir ici pour vous aider à cela. Ensuite, composite que l'image sur l'image de votre chat préféré (le mien est Sheeba).
La bonne chose à ce sujet est que vous pouvez faire de la transparence du texte de l'image une fois, l'enregistrer, puis de l'appliquer à l'ensemble de Sheeba la famille et les amis!