画图程序画图,代码画图形

聚客2022-05-29  52

java绘图程序代码(java画图像表格)

绝对代码

画线的精髓在这 // 字体大小 int fontTitileSize = 12; // 横线的行数 int totalrow = 16; // 竖线的行数 int totalcol = 10; // 图片宽度 int imageWidth = 700; // 行高 int rowheight = 38; // 图片高度 int imageHeight = totalrow*rowheight+41; // 起始高度 int startHeight = 70; // 起始宽度 int startWidth = 0; // 单元格宽度 int colwidth = 60;// 初始化画笔 BufferedImage image = new BufferedImage(imageWidth, imageHeight,BufferedImage.TYPE_INT_RGB); Graphics graphics = image.getGraphics(); graphics.setColor(Color.WHITE); graphics.fillRect(0,0, imageWidth, imageHeight); graphics.setColor(new Color(220,240,240)); int tmpWidth = 5; graphics.setColor(Color.black); graphics.drawLine(startWidth, startHeight, startWidth+10*colwidth, startHeight); //划线是根据开始坐标和结束坐标两点画一条线的。//纵坐标不变画的是一条横线// 横坐标不变画的是一条竖线,如下 graphics.drawLine(startWidth+10*colwidth, startHeight, startWidth+10*colwidth, startHeight+15*rowheight);

画完线之后,如何写上文本呢 //设置字体 Font font = new Font("微软雅黑",Font.PLAIN,fontTitileSize); graphics.setFont(font); graphics.drawString("文本内容", 0, 40);// 什么意思呢,即 在(0,40)这个点的位置,写文本

最后生成图片 调用 createImage(image, path);public static void createImage(BufferedImage image, String fileLocation) { FileOutputStream fos = null; BufferedOutputStream bos = null; fos = new FileOutputStream(fileLocation); bos = new BufferedOutputStream(fos);// JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(bos);// encoder.encode(image); ImageIO.write(image,"jpg",bos) }

一开始你需要使用类
com . sum . image . codec . JPEG . jpegimageencoder,但这是rt.jar包中sun拥有的包,涉及到版权问题。关键是有些大公司用的是openjdk,简单理解就是开源简化版。如果它没有sun的这个包,那么Java。lang.noclassDEFF会出现。

效果图就不给你看了。有兴趣的话可以自己试试。

转载请注明原文地址:https://juke.outofmemory.cn/read/179426.html

最新回复(0)