关于网友提出的“BufferedImage 图片背景色黑色问题”问题疑问,本网通过在网上对“BufferedImage 图片背景色黑色问题”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:
问题:BufferedImage 图片背景色黑色问题
描述:贴代码: 背景一直是黑色,网上的方案都是了下没解决掉,我是想让背景色为白色可就是不行,求解
BufferedImage image = new BufferedImage(600, 600,
BufferedImage.TYPE_INT_RGB);
dg = (Graphics2D) image.createGraphics();
dg.setColor(Color.red);
dg.setBackground(Color.WHITE);
dg.drawLine(startx, starty, x, y);
dg.dispose();
ImageIO.write(image, "jpg", new File("D://Tomcat//M//" + "test"+ count + ".jpg"));
解决方案1: dg = (Graphics2D) image.createGraphics();;
dg.setColor(Color.WHITE);//设置笔刷白色
dg.fillRect(0,0,600,600);//填充整个屏幕
dg.setColor(Color.BLACK); //设置笔刷
g.setColor(Color.red);
g.drawLine(startx, starty, x, y);
dg.drawLine(startx, starty, x, y);
恩 可以!谢谢楼上的兄弟们! 正在调优,可能是我鼠标移动太空生成的图片轨迹不对,颜色是正常的,谢谢
解决方案2:BufferedImage image = new BufferedImage(600, 600,
BufferedImage.TYPE_INT_RGB);
Graphics2D g = (Graphics2D) image.createGraphics();
g.setColor(Color.WHITE);
g.fillRect(0,0,600,600);//填充整个屏幕
g.setColor(Color.BLACK);
g.drawLine(10, 100, 300, 100);
g.dispose();
File file = new File("d:\\test.jpg");
ImageIO.write(image, "jpg", file);
解决方案3: BufferedImage image = new BufferedImage(600, 600,
BufferedImage.TYPE_INT_RGB);
dg = (Graphics2D) image.createGraphics();
dg.fillRect(0,0,600,600);//填充整个屏幕
dg.setColor(Color.red);
dg.drawLine(startx, starty, x, y);
dg.dispose();
设置之后整个背景是白色,但是笔刷笔迹也变为了白色,设置成除白色之外的还是不起作用。
解决方案4:先fill一下。默认的TYPE_INT_RGB都是0,都是黑色的。
解决方案5:你可以先画个白框,刚好是图像的大小。
以上介绍了“BufferedImage 图片背景色黑色问题”的问题解答,希望对有需要的网友有所帮助。
本文网址链接:http://www.codes51.com/itwd/1242625.html