Java读取图片并修改像素,创建图片
2014-12-17 18:16
531 查看
public void replaceImageColor(String file, Color srcColor, Color targetColor) throws IOException{ URL http; if(file.trim().startsWith("https")){ http = new URL(file); HttpsURLConnection conn = (HttpsURLConnection) http.openConnection(); conn.setRequestMethod("GET"); }else if(file.trim().startsWith("http")){ http = new URL(file); HttpURLConnection conn = (HttpURLConnection) http.openConnection(); conn.setRequestMethod("GET"); }else{ http = new File(file).toURI().toURL(); } BufferedImage bi = ImageIO.read(http.openStream()); for (int i = 0; i < bi.getWidth(); i++) { for (int j = 0; j < bi.getHeight(); j++) { System.out.println(bi.getRGB(i, j)); if(srcColor.getRGB()==bi.getRGB(i, j)){ System.out.println(i+","+j+" from:"+srcColor.getRGB()+"to"+targetColor.getRGB()); bi.setRGB(i, j, targetColor.getRGB()); } } } Iterator<ImageWriter> it = ImageIO.getImageWritersByFormatName("png"); ImageWriter writer = it.next(); File f = new File("c://test02.png"); ImageOutputStream ios = ImageIO.createImageOutputStream(f); writer.setOutput(ios); writer.write(bi); bi.flush(); ios.flush(); ios.close(); } public void createImage(int width, int height) throws IOException{ BufferedImage bi = new BufferedImage(width, height, BufferedImage.TYPE_4BYTE_ABGR); Graphics2D graphic = bi.createGraphics(); graphic.setColor(new Color(0.2f,0.3f,0.4f,0.4f)); graphic.fillRect(0, 0, width, height); for (int i = 0; i < width; i++) { for (int j = 0; j < height; j++) { //result[i][j] = bi.getRGB(i, j) & 0xFFFFFF; System.out.println(bi.getRGB(i, j)); // bi.setRGB(i, j, 0xFFFFFF); } } Iterator<ImageWriter> it = ImageIO.getImageWritersByFormatName("png"); ImageWriter writer = it.next(); File f = new File("c://test02.png"); ImageOutputStream ios = ImageIO.createImageOutputStream(f); writer.setOutput(ios); writer.write(bi); }
相关文章推荐
- C++修改图片像素大小,求梯度,创建文件夹并读取文件数据,
- Java读取并修改图片的像素值
- C++修改图片像素大小,求梯度,创建文件夹并读取文件数据,
- JAVA读取文件的创建时间和修改时间
- 【java开发系列】— JDOM创建、修改、删除、读取XML文件
- Java读取文件创建时间和最后修改时间
- JAVA读取文件的创建时间和修改时间
- java实现对Excel文件进行创建、读取、修改等操作
- JAVA--图片的打开--读取--创建图片数组
- JAVA读取文件的创建时间和修改时间
- 【java开发系列】—— JDOM创建、修改、删除、读取XML文件
- Java图片读取之BufferedImage得到像素矩阵的两种方式
- Java读取图片像素和大小
- java 读取文件的创建 时间和修改时间
- JAVA读取文件的创建时间和修改时间
- 【Java】操作excel表,包括创建、读取、以及修改
- Java读取文件创建时间和最后修改时间
- 利用Java 创建和读取Excel文档
- vb.net 创建、修改、读取XML的方法
- JAVA 如何创建/删除/修改/复制目录及文件