首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

java 图片归并

2012-10-08 
java 图片合并ListFileStreamVO fileStreamList photoFileUtils.getPhotoFileStreamListByPhotoList(p

java 图片合并

List<FileStreamVO> fileStreamList = photoFileUtils.getPhotoFileStreamListByPhotoList(photoList);int width = 44;int height = 44;int bigWidth = 179;int bigHeight = 134;List<int[]> image44List = new ArrayList<int[]>();// 压缩75的图为44for (FileStreamVO fileStream : fileStreamList) {try {// 压缩75小图的流Image image = ImageIO.read(fileStream.getInputStream());BufferedImage bufferedImage = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);Graphics graphics = bufferedImage.getGraphics();// graphics.setColor(Color.white);// graphics.fillRect(0, 0, width, height);graphics.drawImage(image, 0, 0, width, height, null);int[] rgbArray = new int[width * height];image44List.add(bufferedImage.getRGB(0, 0, width, height, rgbArray, 0, width));if (0 == m) {itemlist.append(fileStream.getPhotoid());m = m + 1;} else if (m < 12) {itemlist.append(",").append(fileStream.getPhotoid());m = m + 1;}} catch (IOException e) {logger.error("createLovePhotoFolderCover  error lovePhotoFolderId:" + lovePhotoFolderId);}}BufferedImage newImage = new BufferedImage(bigWidth, bigHeight, BufferedImage.TYPE_INT_RGB);Graphics graphics = newImage.getGraphics();graphics.setColor(Color.white);graphics.fillRect(0, 0, bigWidth, bigHeight);graphics.drawImage(newImage, 0, 0, bigWidth, bigHeight, null);if (image44List.size() < 12) {logger.error("createLovePhotoFolderCover  error image44List.length<12 lovePhotoFolderId:"+ lovePhotoFolderId);if (photoList.size() >= 1) {this.updateCountOfLovePhotoFolder(lovePhotoFolderId, userId);int count = lovePhotoUserItemService.getLovePhotoUserItemCountByFolderId(lovePhotoFolderId, userId);lovePhotoFolderDao.updateLovePhotoFolderCover(lovePhotoFolderId, photoList.get(0).getTinyDocId(),ImgStorageType.PHOTO_PHOTO163, count, photoList.get(0).getId() + "");// 到DFS上删除旧的封面数据if (lovePhotoFolder.getItemList().split(",").length == 12) {fileService.deleteFile(lovePhotoFolder.getImageId());}}return;}// 生成12个小图的封面for (int i = 0; i < 3; i++) {for (int j = 0; j < 4; j++) {newImage.setRGB(width * j + j, height * i + i, width, height, image44List.get(i * 4 + j), 0, width);}}

热点排行