zoukankan      html  css  js  c++  java
  • 二、工具类ImageUtil——图片处理

    这个工具类完成的工作如下:

    1、第一个static方法,完成图片格式的转换。统一转换成.jpg格式。

    package util;
    
    import java.awt.Toolkit;
    import java.awt.image.BufferedImage;
    import java.awt.image.ColorModel;
    import java.awt.image.DataBuffer;
    import java.awt.image.DataBufferInt;
    import java.awt.image.DirectColorModel;
    import java.awt.image.PixelGrabber;
    import java.awt.image.Raster;
    import java.awt.image.WritableRaster;
    import java.io.File;
    /*
     * 处理图片的工具类:
     * 定义了3个方法
     */
    public class ImageUtil {
        //图片格式的转换,统一转换成.jpg格式
        public static BufferedImage change2jpg(File f) {
            try {
                java.awt.Image i = Toolkit.getDefaultToolkit().createImage(f.getAbsolutePath());
                PixelGrabber pg = new PixelGrabber(i, 0, 0, -1, -1, true);
                pg.grabPixels();
                int width = pg.getWidth(), height = pg.getHeight();
                final int[] RGB_MASKS = { 0xFF0000, 0xFF00, 0xFF };
                final ColorModel RGB_OPAQUE = new DirectColorModel(32, RGB_MASKS[0], RGB_MASKS[1], RGB_MASKS[2]);
                DataBuffer buffer = new DataBufferInt((int[]) pg.getPixels(), pg.getWidth() * pg.getHeight());
                WritableRaster raster = Raster.createPackedRaster(buffer, width, height, width, RGB_MASKS, null);
                BufferedImage img = new BufferedImage(RGB_OPAQUE, raster, false, null);
                return img;
            } catch (InterruptedException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
                return null;
            }
        }
    }
  • 相关阅读:
    python活力练习Day13
    检测一个字符串在另外一个字符串中的位置
    Python活力练习Day12
    Python多进程与单进程效率对比
    HTML-Note
    Python判断自定义的参数格式是否正确
    图片的灰与彩
    Git常用命令
    Linux 单引号和双引号的区别
    类函数中获取进程池对象的地址
  • 原文地址:https://www.cnblogs.com/Strugglinggirl/p/12927111.html
Copyright © 2011-2022 走看看