zoukankan      html  css  js  c++  java
  • 切分和组合图片(二)

    切分和组合图片(二)

    组合步骤:
    1. 初始化有多少小图片
    2. 加载小图片到缓存中
    3. 初始化大图片存储器
    4. 组合小图片到大图片
    5. 生成大图片文件

    小图片源:


    int rows = 4;   //初始化有小图片的数量 
            int cols = 4;  
            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("img" + i + ".jpg");  
            }  
      
           //缓存图片文件
            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++;  
                }  
            }  
            System.out.println("图片组合完");  
            ImageIO.write(finalImg, "jpeg", new File("b.jpg"));  
        }

    生成的大图片:
















  • 相关阅读:
    2018全球最强物联网公司榜单揭晓
    物联网
    kalman滤波
    自动驾驶
    CAN总线基础
    Linux系统下x86和ARM的区别有哪些?
    算法课笔记系列(七)—— 平摊分析Amortized Analysis
    深入理解Linux内存分配
    linux内核--自旋锁的理解
    DMA(直接存储器存取)
  • 原文地址:https://www.cnblogs.com/java20130722/p/3207251.html
Copyright © 2011-2022 走看看