package com.picture; import java.awt.Graphics2D; import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; import java.util.regex.Pattern; import javax.imageio.ImageIO; import javax.swing.ImageIcon; import javax.swing.JOptionPane; public class Picture { public static void convert(String path) { // TODO Auto-generated constructor stub try { BufferedImage image = ImageIO.read(new File(path)); ImageIcon imageIcon = new ImageIcon(image); BufferedImage bufferedImage = new BufferedImage( imageIcon.getIconWidth(), imageIcon.getIconHeight(), BufferedImage.TYPE_4BYTE_ABGR); Graphics2D g2D = (Graphics2D) bufferedImage.getGraphics(); g2D.drawImage(imageIcon.getImage(), 0, 0, imageIcon.getImageObserver()); int alpha = 0; for (int j1 = bufferedImage.getMinY(); j1 < bufferedImage .getHeight(); j1++) { for (int j2 = bufferedImage.getMinX(); j2 < bufferedImage .getWidth(); j2++) { int rgb = bufferedImage.getRGB(j2, j1); if (colorInRange(rgb)) alpha = 0; else alpha = 255; rgb = (alpha << 24) | (rgb & 0x00ffffff); bufferedImage.setRGB(j2, j1, rgb); } } g2D.drawImage(bufferedImage, 0, 0, imageIcon.getImageObserver()); // 生成图片为PNG String outFile = path.substring(0, path.lastIndexOf(".")); ImageIO.write(bufferedImage, "png", new File(outFile + ".png")); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } public static int color_range = 210; public static boolean colorInRange(int color) { int red = (color & 0xff0000) >> 16; int green = (color & 0x00ff00) >> 8; int blue = (color & 0x0000ff); if (red >= color_range && green >= color_range && blue >= color_range) return true; return false; } }
相关推荐
java后台生成背景色透明验证码的方法,可直接调用。本方法只生成随机字符数字组成的四位验证码。
实现java处理图片透明,png图片透明
JAVA处理图片 加文字水印以及灰色透明背景,处理图片。
java版 图片透明设置功能代码,运行正常,是图片处理的方便工具类
这个代码可以把多张图片重叠成一张图片。如果是透明图片透明的部分还保持透明。 代码中是三张图片叠加,并且改变了其中一张图片的大小
java对图片改变大小,png防止变黑,加圆角 圆角外透明
主要介绍了解决java压缩图片透明背景变黑色的问题,需要的朋友可以参考下
Java实现的透明按钮效果,本例子里面还有一张图片,最终实现效果是按钮透明,但图片不覆盖按钮。很适合喜欢界面设计的朋友!~
俺自己写的程序,不知道能不能入大家的法眼,想偷懒的可以拿来改改就成,注:是.dat文件,自己改成.java就可以了
该列子实现了不规则图形作为背景图片时的效果
html2image-0.9.zip 包含 html2image-0.9.jar,html2image-0.9-javadoc.jar,html2image-0.9-sources.jar
水印 java Graphics2D实现文字图片水印 实现水印四个角水印
在进行上位机开发的时候,我们经常会寻找带透明的PNG图片作为图标或背景图,但是网络上搜索到的大部分图片或素材网站免费提供的都不是PNG图片,还有自己编辑的图片也不具有透明层。此工具能够很好的选取底色并进行...
半透明背景的下拉菜单 保证专业美观,有图片和代码
去底速刷(JPG_BMP转换成透明背景PNG*******************************************************
util实现Java图片水印添加功能,有添加图片水印和文字水印,可以设置水印位置,透明度、设置对线段锯齿状边缘处理、水印图片的路径,水印一般格式是gif,png,这种图片可以设置透明度、水印旋转等,可以参考代码...
util实现Java图片水印添加功能,有添加图片水印和文字水印,可以设置水印位置,透明度、设置对线段锯齿状边缘处理、水印图片的路径,水印一般格式是gif,png,这种图片可以设置透明度、水印旋转等,可以参考代码...
util实现Java图片水印添加功能,有添加图片水印和文字水印,可以设置水印位置,透明度、设置对线段锯齿状边缘处理、水印图片的路径,水印一般格式是gif,png,这种图片可以设置透明度、水印旋转等,可以参考代码...
util实现Java图片水印添加功能,有添加图片水印和文字水印,可以设置水印位置,透明度、设置对线段锯齿状边缘处理、水印图片的路径,水印一般格式是gif,png,这种图片可以设置透明度、水印旋转等,可以参考代码...
util实现Java图片水印添加功能,有添加图片水印和文字水印,可以设置水印位置,透明度、设置对线段锯齿状边缘处理、水印图片的路径,水印一般格式是gif,png,这种图片可以设置透明度、水印旋转等,可以参考代码...