下面通过代码给大家介绍Java gif图片转换为jpg格式,具体代码如下所示:

if(fileName.toLowerCase().endsWith(".gif")){//由于头像上传支持JPG、JPEG、BMP、GIF、PNG格式图片.而商汤人脸设备仅支持JPG、JPEG、BMP、PNG,故如图片为GIF格式需要转换

fileParams.put("avatarFile", api.GifToJpg(avatar_file));

}else{

fileParams.put("avatarFile", api.getBytes(avatar_file));

}

/**

* 将文件转换为byte二进制流

* @param f

* @return

*/

public static byte[] getBytes(File f) {

try {

InputStream in = new FileInputStream(f);

ByteArrayOutputStream out = new ByteArrayOutputStream(1024);

byte[] b = new byte[1024];

int n;

while ((n = in.read(b)) != -1)

out.write(b, 0, n);

in.close();

out.close();

return out.toByteArray();

} catch (IOException e) {

logger.error("***请设置文件路径***");

e.printStackTrace();

}

return null;

}

/**

* 将gif格式图片转换为jpg格式文件,并直接返回byte二进制流

* @param file

* @return

*/

public static byte[] GifToJpg(File file){

BufferedImage bufferedImage;

ByteArrayOutputStream out = new ByteArrayOutputStream(1024);

try {

// read image file

bufferedImage = ImageIO.read(file);

// create a blank, RGB, same width and height, and a white

BufferedImage newBufferedImage = new BufferedImage(

bufferedImage.getWidth(), bufferedImage.getHeight(),

BufferedImage.TYPE_INT_RGB);

// TYPE_INT_RGB:创建一个RBG图像,24位深度,成功将32位图转化成24位

newBufferedImage.createGraphics().drawImage(bufferedImage, 0, 0,Color.WHITE, null);

// write to jpeg file

ImageIO.write(newBufferedImage, "jpg",out);//转换输出到二进制数组流

//ImageIO.write(newBufferedImage, "jpg",new File("c:\\java.jpg"));//转换输出到文件

return out.toByteArray();//二进制流

} catch (IOException e) {

logger.error("***GifToJpg方法报错***");

e.printStackTrace();

}

return null;

}

知识点扩展:

用java将png图片转换成jpg格式的图片

import java.awt.Color;

import java.awt.image.BufferedImage;

import java.io.File;

import java.io.IOException;

import javax.imageio.ImageIO;

public class ConvertImageFile {

public static void main(String[] args) {

BufferedImage bufferedImage;

try {

//read image file

bufferedImage = ImageIO.read(new File("c:\\java.png"));

// create a blank, RGB, same width and height, and a white background

BufferedImage newBufferedImage = new BufferedImage(bufferedImage.getWidth(),

bufferedImage.getHeight(), BufferedImage.TYPE_INT_RGB);

//TYPE_INT_RGB:创建一个RBG图像,24位深度,成功将32位图转化成24位

newBufferedImage.createGraphics().drawImage(bufferedImage, 0, 0, Color.WHITE, null);

// write to jpeg file

ImageIO.write(newBufferedImage, "jpg", new File("c:\\java.jpg"));

System.out.println("Done");

} catch (IOException e) {

e.printStackTrace();

}

}

}

总结

以上所述是小编给大家介绍的Java gif图片转换为jpg格式,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

java gif转jpg_Java gif图片转换为jpg格式相关推荐

  1. java gif转jpg_Java gif图片转换为jpg格式|chu

    下面通过代码给大家介绍Java gif图片转换为jpg格式,具体代码如下所示: if(fileName.toLowerCase().endsWith(".gif")){//由于头像 ...

  2. java gif jpg_Java gif图片转换为jpg格式

    下面通过代码给大家介绍Java gif图片转换为jpg格式,具体代码如下所示: if(fileName.toLowerCase().endsWith(".gif")){//由于头像 ...

  3. JAVA实现bmp转换JPEG_Java gif图片转换为jpg格式

    下面通过代码给大家介绍Java gif图片转换为jpg格式,具体代码如下所示: if(fileName.toLowerCase().endsWith(".gif")){//由于头像 ...

  4. 将BMP 格式图片转换为 JPEG 格式【c语言】

    源码链接: https://blog.csdn.net/qq_44394952/article/details/122587475?spm=1001.2014.3001.5502. 一.任务及目标 利 ...

  5. 如何批量将 bmp 格式图片转换为 png 格式

    概要:bmp 格式是纹的操作系统当中非常常见的一种图片格式,这种格式的特点是包含的图像信息较丰富,几乎不进行压缩,所以导致了它存在一个很大的缺点,那就是占用磁盘空间过大,那么我们怎么将 bmp 格式的 ...

  6. 将BMP 格式图片转换为 JPEG 格式【c语言源码】

    原理及代码讲解链接: https://blog.csdn.net/qq_44394952/article/details/122587306?spm=1001.2014.3001.5502. 主函数m ...

  7. 如何批量将 gif 图片转换为 jpg 格式

    概要:gif 格式的图片相信大家或多或少的都有接触过.最常见的就是我们的表情包.动图等等,这也是 gif 格式图片比较大的应用场景.但也并不一定是所有的 gif 格式的图片都是动图,也有些是静态的.那 ...

  8. 如何批量将 webp 格式图片转换为 png 格式

    概要:在之前的文章当中,我们对 webp 格式的图片做过一些简单的介绍.这种格式是一种用于 web 项目的新的图像格式,他可以大大提高网站访问速度,因为同样的分辨率的 webp 格式的图片,它的大小要 ...

  9. 【C语言】之把yuyv422格式的图片转换为pnm格式的图片

    平台:Linux /***************************************************************************** 文件名:Yuyv422T ...

最新文章

  1. on java 8 学习笔记 2022.2.17-2022.2.18
  2. 深度学习模型建立过程_所有深度学习都是统计模型的建立
  3. Windows+Android各类实用软件总结
  4. Flask-SQLAlchemy一般方法总结
  5. python3记录(3)-os.walk() 方法
  6. 字符变量赋值规则_第四章 变量
  7. 常用排序算法的Java实现 - 1
  8. python char 相等_用 Python 实现 Excel文本函数
  9. 【渝粤教育】广东开放大学 操作系统原理与应用 形成性考核 (46)
  10. java mysql时间格式化字符串_java将日期时间字符串转成日期插入到oracle的date字段...
  11. 天翼如何才能鹏程×××?
  12. 485 九针头_RS232 RS422 RS-485 标准9针串口引脚定义
  13. Linux安装中文输入法(Google拼音输入法)
  14. 有理数加法C语言pta,有理数
  15. python统计文章中高频词汇并生成词云
  16. shareSDK导入的常见错误及解决方法
  17. python爬取电影票房前50_Python3爬取起猫眼电影实时票房信息,解决文字反爬~~~附源代码...
  18. 再不复工,公司就要发现没有我们也能正常运转了
  19. POI导出Excel(二)
  20. 优化网站性能的6种架构方案

热门文章

  1. Android 10.0 移动网络默认为4G
  2. IT项目管理个人总结
  3. Java开发全套学习!mysql配置文件my.ini找不到
  4. 一篇好文,以在迷茫时品味…………
  5. 如何实行反编译,将.class文件转化为.java文件
  6. cadence 查看器件丝印_一种Allegro软件中自动检查丝印摆放方向的方法与流程
  7. 快速排序Rapidly Sort
  8. JZOJ 2679. 跨时代
  9. 马克斯cms,马克斯cms模板,马克斯cms网站开发
  10. Zabbix-01简单导入MIB文件并测试