java gif转jpg_Java gif图片转换为jpg格式
下面通过代码给大家介绍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格式相关推荐
- java gif转jpg_Java gif图片转换为jpg格式|chu
下面通过代码给大家介绍Java gif图片转换为jpg格式,具体代码如下所示: if(fileName.toLowerCase().endsWith(".gif")){//由于头像 ...
- java gif jpg_Java gif图片转换为jpg格式
下面通过代码给大家介绍Java gif图片转换为jpg格式,具体代码如下所示: if(fileName.toLowerCase().endsWith(".gif")){//由于头像 ...
- JAVA实现bmp转换JPEG_Java gif图片转换为jpg格式
下面通过代码给大家介绍Java gif图片转换为jpg格式,具体代码如下所示: if(fileName.toLowerCase().endsWith(".gif")){//由于头像 ...
- 将BMP 格式图片转换为 JPEG 格式【c语言】
源码链接: https://blog.csdn.net/qq_44394952/article/details/122587475?spm=1001.2014.3001.5502. 一.任务及目标 利 ...
- 如何批量将 bmp 格式图片转换为 png 格式
概要:bmp 格式是纹的操作系统当中非常常见的一种图片格式,这种格式的特点是包含的图像信息较丰富,几乎不进行压缩,所以导致了它存在一个很大的缺点,那就是占用磁盘空间过大,那么我们怎么将 bmp 格式的 ...
- 将BMP 格式图片转换为 JPEG 格式【c语言源码】
原理及代码讲解链接: https://blog.csdn.net/qq_44394952/article/details/122587306?spm=1001.2014.3001.5502. 主函数m ...
- 如何批量将 gif 图片转换为 jpg 格式
概要:gif 格式的图片相信大家或多或少的都有接触过.最常见的就是我们的表情包.动图等等,这也是 gif 格式图片比较大的应用场景.但也并不一定是所有的 gif 格式的图片都是动图,也有些是静态的.那 ...
- 如何批量将 webp 格式图片转换为 png 格式
概要:在之前的文章当中,我们对 webp 格式的图片做过一些简单的介绍.这种格式是一种用于 web 项目的新的图像格式,他可以大大提高网站访问速度,因为同样的分辨率的 webp 格式的图片,它的大小要 ...
- 【C语言】之把yuyv422格式的图片转换为pnm格式的图片
平台:Linux /***************************************************************************** 文件名:Yuyv422T ...
最新文章
- on java 8 学习笔记 2022.2.17-2022.2.18
- 深度学习模型建立过程_所有深度学习都是统计模型的建立
- Windows+Android各类实用软件总结
- Flask-SQLAlchemy一般方法总结
- python3记录(3)-os.walk() 方法
- 字符变量赋值规则_第四章 变量
- 常用排序算法的Java实现 - 1
- python char 相等_用 Python 实现 Excel文本函数
- 【渝粤教育】广东开放大学 操作系统原理与应用 形成性考核 (46)
- java mysql时间格式化字符串_java将日期时间字符串转成日期插入到oracle的date字段...
- 天翼如何才能鹏程×××?
- 485 九针头_RS232 RS422 RS-485 标准9针串口引脚定义
- Linux安装中文输入法(Google拼音输入法)
- 有理数加法C语言pta,有理数
- python统计文章中高频词汇并生成词云
- shareSDK导入的常见错误及解决方法
- python爬取电影票房前50_Python3爬取起猫眼电影实时票房信息,解决文字反爬~~~附源代码...
- 再不复工,公司就要发现没有我们也能正常运转了
- POI导出Excel(二)
- 优化网站性能的6种架构方案