Java分割拼接图片
来源:互联网 发布:默认禁用网络映射 编辑:程序博客网 时间:2024/05/06 20:41
分割图片
拼接图片
- private static void splitImage() throws IOException {
- String originalImg = "C:\\img\\split\\a380_1280x1024.jpg";
- // 读入大图
- File file = new File(originalImg);
- FileInputStream fis = new FileInputStream(file);
- BufferedImage image = ImageIO.read(fis);
- // 分割成4*4(16)个小图
- int rows = 4;
- int cols = 4;
- int chunks = rows * cols;
- // 计算每个小图的宽度和高度
- int chunkWidth = image.getWidth() / cols;
- int chunkHeight = image.getHeight() / rows;
- int count = 0;
- BufferedImage imgs[] = new BufferedImage[chunks];
- for (int x = 0; x < rows; x++) {
- for (int y = 0; y < cols; y++) {
- //设置小图的大小和类型
- imgs[count] = new BufferedImage(chunkWidth, chunkHeight, image.getType());
- //写入图像内容
- Graphics2D gr = imgs[count++].createGraphics();
- gr.drawImage(image, 0, 0,
- chunkWidth, chunkHeight,
- chunkWidth* y, chunkHeight * x,
- chunkWidth * y + chunkWidth,
- chunkHeight * x + chunkHeight, null);
- gr.dispose();
- }
- }
- // 输出小图
- for (int i = 0; i < imgs.length; i++) {
- ImageIO.write(imgs[i], "jpg", new File("C:\\img\\split\\img" + i + ".jpg"));
- }
- System.out.println("完成分割!");
- }
拼接图片
- private static void mergeImage() throws IOException {
- int rows = 2;
- int cols = 2;
- int chunks = rows * cols;
- int chunkWidth, chunkHeight;
- int type;
- //读入小图
- File[] imgFiles = new File[chunks];
- for (int i = 0; i < chunks; i++) {
- imgFiles[i] = new File("C:\\img\\merge\\img" + i + ".jpg");
- }
- //创建BufferedImage
- BufferedImage[] buffImages = new BufferedImage[chunks];
- for (int i = 0; i < chunks; i++) {
- buffImages[i] = ImageIO.read(imgFiles[i]);
- }
- type = buffImages[0].getType();
- chunkWidth = buffImages[0].getWidth();
- chunkHeight = buffImages[0].getHeight();
- //设置拼接后图的大小和类型
- BufferedImage finalImg = new BufferedImage(chunkWidth * cols, chunkHeight * rows, type);
- //写入图像内容
- int num = 0;
- for (int i = 0; i < rows; i++) {
- for (int j = 0; j < cols; j++) {
- finalImg.createGraphics().drawImage(buffImages[num], chunkWidth * j, chunkHeight * i, null);
- num++;
- }
- }
- //输出拼接后的图像
- ImageIO.write(finalImg, "jpeg", new File("C:\\img\\merge\\finalImg.jpg"));
- System.out.println("完成拼接!");
- }
- Java分割拼接图片
- Java分割拼接图片
- Java 拼接 图片
- java拼接图片
- java分割图片测试
- java拼接多张图片
- Java 分割图片的办法
- 字符串分割与拼接
- OC字符串分割拼接
- 字符串的分割、拼接
- 字符串的拼接分割
- 图片拼接!
- 图片拼接
- 图片拼接
- 图片拼接
- python分割和拼接字符串
- 字符串的分割与拼接
- 图片分割
- CSS中背景图片定位方法
- POI 设置小数、百分比、货币、日期、科学计数法和中文大写
- vs c调用matlab生成的动态库
- 循环冗余校验
- 闪回恢复区
- Java分割拼接图片
- Java上传各种方式总结
- 找出小于1000的数字中令1/d拥有最长循环圈的数字d。
- 网页显示出现问题-解决
- Chrome for win7x64
- Android dumpstate 工具解析
- Java中对象的构建过程
- 创建线程和不创建线程,栈的数据
- An error has occurred when creating this preference page.