欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > 文章正文

Java 图片合并类,java合并类,package com.

来源: javaer 分享于  点击 39582 次 点评:115

Java 图片合并类,java合并类,package com.


package com.loyom.mp.handle;import java.awt.image.BufferedImage;import java.io.File;import java.io.IOException;import javax.imageio.ImageIO;public class ImageHandle {    public BufferedImage marge(String first, String last, boolean isVertical) {        BufferedImage one = this.readImage(first);        BufferedImage two = this.readImage(last);        if (isVertical) {            return this.mergeTwoImageByVertical(one, two);        } else {            return this.mergeTwoImageByHorizontal(one, two);        }    }    public void saveImage(String savePath, BufferedImage image) {        try {            File file = new File(savePath);            ImageIO.write(image, "jpg", file);// 写图片          } catch (IOException ex) {            ex.printStackTrace();        }    }    private BufferedImage mergeTwoImageByVertical(BufferedImage one, BufferedImage two) {        int width = this.getWidth(one);        int height = this.getHeight(one);        int[] oneRPG = this.readImageRPG(one);        int[] twoRPG = this.readImageRPG(two);        BufferedImage result = new BufferedImage(width, height * 2, BufferedImage.TYPE_INT_RGB);        result.setRGB(0, 0, width, height, oneRPG, 0, width);        result.setRGB(0, height, width, height, twoRPG, 0, width);        return result;    }    private BufferedImage mergeTwoImageByHorizontal(BufferedImage one, BufferedImage two) {        int width = this.getWidth(one);        int height = this.getHeight(one);        int[] oneRPG = this.readImageRPG(one);        int[] twoRPG = this.readImageRPG(two);        BufferedImage result = new BufferedImage(width * 2, height, BufferedImage.TYPE_INT_RGB);        result.setRGB(0, 0, width, height, oneRPG, 0, width);        result.setRGB(width, 0, width, height, twoRPG, 0, width);        return result;    }    private int[] readImageRPG(BufferedImage image) {        int width = this.getWidth(image);        int height = this.getHeight(image);        int[] imageRPG = new int[width * height];// 从图片中读取RGB          imageRPG = image.getRGB(0, 0, width, height, imageRPG, 0, width);        return imageRPG;    }    private int getWidth(BufferedImage image) {        if (image == null) {            return 0;        }        return image.getWidth();    }    private int getHeight(BufferedImage image) {        if (image == null) {            return 0;        }        return image.getHeight();    }    private BufferedImage readImage(String path) {        try {            File file = new File(path);            return ImageIO.read(file);        } catch (IOException ex) {            ex.printStackTrace();        }        return null;    }}

来自:http://my.oschina.net/u/2370543/blog/487821

相关栏目:

用户点评