access数据库做网站,天津市建设工程合同备网站,万户高端网站建设,wordpress中国风主题下载【需求】
在桌面上有若干png图片#xff0c;是使用截图软件FSCapture7.6对通达信的K线图截图而得#xff0c;在打印这些K线图前#xff0c;需要将它们进行反色处理。
【代码】
package test240313;import java.awt.image.BufferedImage;
import java.awt.image.ByteLooku…【需求】
在桌面上有若干png图片是使用截图软件FSCapture7.6对通达信的K线图截图而得在打印这些K线图前需要将它们进行反色处理。
【代码】
package test240313;import java.awt.image.BufferedImage;
import java.awt.image.ByteLookupTable;
import java.awt.image.LookupOp;
import java.io.File;import javax.imageio.ImageIO;/*** 将指定路径下所有的png文件进行反色处理* author ufo**/
public class InverseAllPngs {public static void main(String[] args) throws Exception{// 预先准备256个颜色梯度的反向表byte reverse[] new byte[256];for (int i 0; i 256; i) {reverse[i] (byte) (255 - i);}// 获得指定路径下的所有png文件File foldernew File(C:\\Users\\ufo\\Desktop\\); File[] filesfolder.listFiles();for(File f:files) {if(f.isFile()) {String fnamef.getPath();if(fname.toLowerCase().endsWith(.png)) {// 读原文件BufferedImage img ImageIO.read(f);// 得到反色后的图像BufferedImage inversedImg inverseColor(img,reverse);// 写入原文件File outFile new File(fname);ImageIO.write(inversedImg, png, outFile);}}}}/*** 返回反色处理后的新图像* param image* return*/private static BufferedImage inverseColor(BufferedImage image,byte[] reverse) {ByteLookupTable blut new ByteLookupTable(0, reverse);BufferedImage bimg new BufferedImage(image.getWidth(), image.getHeight(), BufferedImage.TYPE_INT_RGB);LookupOp lop new LookupOp(blut, null);lop.filter(image, bimg);return bimg;}
}【参考资料】
Java 图像处理系列一——反色 - 简书
java将图片变灰、去噪、反色_java如何设置图片同一灰度明暗度-CSDN博客
END