Dessiner un Rectangle plein sur une BufferedImage
Je suis donc d'essayer de créer une application qui peut black-out sections d'un sondage qui contient des informations sensibles. Cependant, je ai couru dans un peu d'un problème.
Ce que je veux faire est d'attirer rempli de rectangles noirs sur une BufferedImage x, y, largeur et hauteur de la région souhaitée dans le noir, puis d'écrire que la nouvelle image de mon système de fichier. Voici mon code.
File imageFile = new File("images/template.jpg");
BufferedImage img = ImageIO.read(imageFile);
Graphics2D graph = img.createGraphics();
graph.setColor(Color.BLACK);
graph.fill(new Rectangle(x, y, width, height));
graph.dispose();
ImageIO.write(img, "jpg", new File("images/template.jpg"));
Pour quelque raison que ce soit l'image de la ressource ne change pas après ce segment de code. Toutes les idées sur ce que je fais mal?
En êtes-vous des erreurs? Ne horodatage sur le changement de fichier après l'exécution du code?
1) Pour mieux aider plus tôt, après une SSCCE. 2) Essayez d'écrire une nouvelle image.
1) Pour mieux aider plus tôt, après une SSCCE. 2) Essayez d'écrire une nouvelle image.
OriginalL'auteur John Fox | 2012-07-24
Vous devez vous connecter pour publier un commentaire.
Vérifier que votre x, y, largeur, hauteur vraiment tomber dans les dimensions de l'image. Vous êtes probablement dessin quelque part en dehors de l'image de limites. Pas en mode debug pour vérifier ou println (), les variables etc.
OriginalL'auteur Durandal
Très en retard pour cette réponse, mais vous permet d'économiser de l'image et pas le graphique que vous créez. Je pense que cela doit être un BufferedImage de nouveau pour enregistrer
OriginalL'auteur Nelson Macieira
Je sais, c'est une vieille question, mais peut-être il peut être utile à quelqu'un,
Je pense que vous devriez utiliser cette
Par la façon dont il est difficile de trouver une solution sans un peu plus de code.
Espérons qu'il sera utile.
OriginalL'auteur Lucarnosky
Vous suffit de remplacer la ligne:
:
OriginalL'auteur Billal dz