[Java] java 实现将jpg格式图片转换成png格式图片 →→→→→进入此内容的聊天室

来自 , 2019-07-13, 写在 Java, 查看 98 次.
URL http://www.code666.cn/view/f33ba15e
  1. package test;
  2. import java.awt.Graphics;
  3. import java.awt.Image;
  4. import java.awt.image.BufferedImage;
  5. import java.io.File;
  6. import java.io.FileOutputStream;
  7. import java.io.IOException;
  8.  
  9. import javax.imageio.ImageIO;
  10.  
  11. /**
  12.  * 图片基本操作
  13.  * @author lxw出山小草
  14.  */
  15. public class ImageEncoderService {
  16.  
  17.     private static ImageEncoderService instance;
  18.  
  19.     private ImageEncoderService() {
  20.         instance = this;
  21.     }
  22.  
  23.     public static ImageEncoderService getInstance() {
  24.         if (instance == null) {
  25.             instance = new ImageEncoderService();
  26.         }
  27.         return instance;
  28.     }
  29.  
  30.     /**
  31.      * 缩小并转换格式
  32.      *
  33.      * @param srcPath源路径
  34.      * @param destPath目标路径
  35.      * @param height目标高
  36.      * @param width
  37.      *            目标宽
  38.      * @param formate
  39.      *            文件格式
  40.      * @return
  41.      */
  42.     public boolean narrowAndFormateTransfer(String srcPath, String destPath, int height, int width, String formate) {
  43.         boolean flag = false;
  44.         try {
  45.             File file = new File(srcPath);
  46.             File destFile = new File(destPath);
  47.             if (!destFile.getParentFile().exists()) {
  48.                 destFile.getParentFile().mkdir();
  49.             }
  50.             BufferedImage src = ImageIO.read(file); // 读入文件
  51.             Image image = src.getScaledInstance(width, height, Image.SCALE_DEFAULT);
  52.             BufferedImage tag = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);
  53.             Graphics g = tag.getGraphics();
  54.             g.drawImage(image, 0, 0, null); // 绘制缩小后的图
  55.             g.dispose();
  56.             flag = ImageIO.write(tag, formate, new FileOutputStream(destFile));// 输出到文件流
  57.         } catch (IOException e) {
  58.             e.printStackTrace();
  59.         }
  60.         return flag;
  61.     }
  62.  
  63.     public static void main(String[] args) {
  64.         try {
  65.             ImageEncoderService service = new ImageEncoderService();
  66.             boolean flag = service.narrowAndFormateTransfer("E:\\\\我的图片/雨伞.jpg", "E:\\\\我的图片/雨伞.png", 400, 400, "png");
  67.             System.out.println(flag);
  68.         } catch (Exception e) {
  69.             System.out.println(e);
  70.         }
  71.     }
  72.  
  73. }
  74. //该片段来自于http://yuncode.net
  75.  

回复 "java 实现将jpg格式图片转换成png格式图片"

这儿你可以回复上面这条便签

captcha