Java将JPG/PNG图片转换为WEBP格式,以及WEBP转换成JPG/PNG格式

这篇具有很好参考价值的文章主要介绍了Java将JPG/PNG图片转换为WEBP格式,以及WEBP转换成JPG/PNG格式。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

越来越多的网站采用了webp格式的图片,webp占用空间小,传送更快,画质不降低。经常会遇到图片格式转换的需求,我们可以借助第三方的包,通过Java实现来PG/PNG图片转换为WEBP格式,以及WEBP转换成JPG/PNG格式。

1.maven项目依赖

在pom.xml加入下面的内容

<!-- webp-imageio 依赖 -->
<dependency>
    <groupId>org.sejda.imageio</groupId>
    <artifactId>webp-imageio</artifactId>
    <version>0.1.6</version>
</dependency>

2.代码分享文章来源地址https://www.toymoban.com/news/detail-719032.html

package com.zx.tool.image.webp;

import java.awt.image.BufferedImage;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;

import javax.imageio.IIOImage;
import javax.imageio.ImageIO;
import javax.imageio.ImageReader;
import javax.imageio.ImageWriter;
import javax.imageio.stream.FileImageInputStream;
import javax.imageio.stream.FileImageOutputStream;

import com.luciad.imageio.webp.WebPReadParam;
import com.luciad.imageio.webp.WebPWriteParam;

public class Webp2Jpeg {

	public static void main(String[] args) {
		
		String oldfile = "D:\\手机遥遥领先.webp";
		String newfile = "D:\\十项黑科技.jpg";
		
		webp2jpg(oldfile,newfile);
	}
	
	/**
	 * 	webp格式图片转成JPG格式
	 * @param oldfile	c:/1.test.webp
	 * @param newfile	c:/1.test.jpg
	 * @return
	 */
	public static void webp2jpg(String oldfile, String newfile){
        // 创建WebP ImageReader实例
        ImageReader reader = ImageIO.getImageReadersByMIMEType("image/webp").next();
        // 配置解码参数
        WebPReadParam readParam = new WebPReadParam();
        readParam.setBypassFiltering(true);
        // 在ImageReader设置读取的原文件
        try {
			reader.setInput(new FileImageInputStream(new File(oldfile)));
			// 解码图像
	        BufferedImage image = reader.read(0, readParam);
	        // 设置输入文件的格式和文件名
	        ImageIO.write(image, "jpg", new File(newfile)); // 这里也可以使用其他图片格式,但是格式和文件名后缀要保持一致
	        System.out.println("webp文件转成png格式成功");
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}
    }
	
	/**
	 * JPG格式图片转成webp格式(也可以是其他格式图片)
	 * @param oldfile	c:/1.test.jpg
	 * @param newfile	c:/1.test.webp
	 * @return
	 */
	public static void jpg2webp(String oldfile, String newfile){
      
        try {
        	// 获取原始文件的编码
            BufferedImage image = ImageIO.read(new File(oldfile));
            // 创建WebP ImageWriter实例
            ImageWriter writer = ImageIO.getImageWritersByMIMEType("image/webp").next();
	        // 配置编码参数
	        WebPWriteParam writeParam = new WebPWriteParam(writer.getLocale());
	        // 设置压缩模式
	        writeParam.setCompressionMode(WebPWriteParam.MODE_DEFAULT);
	        // 配置ImageWriter输出
	        writer.setOutput(new FileImageOutputStream(new File(newfile)));
	        // 进行编码,重新生成新图片
	        writer.write(null, new IIOImage(image, null, null), writeParam);
	        System.out.println("jpg文件转成webp格式成功");
        } catch (FileNotFoundException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}
    }
	
}

到了这里,关于Java将JPG/PNG图片转换为WEBP格式,以及WEBP转换成JPG/PNG格式的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Java 转换 WebP 图片,使用 webp-imageio

    WebP 是 Google 推出的一种新型图片格式,相比于传统的 PNG/JPG 图片有着更小体积的优势,在当今 Web 中有着广泛的应用。但是 Java 和 JDK 本身不支持 WebP 图像,不过我们可以使用 webp-imageio 库来支持 WebP 图片。 顺便提一提其他库支持的方式。WebP 最早是这个 webp project of Luciad 库提

    2024年02月02日
    浏览(41)
  • Python实现: JPG与PNG格式图片间互转

    【注意】转换完成后,转换图会与原图在同一个文件夹,只需按大小进行排列就可以将转换后的图片筛选出来

    2024年02月06日
    浏览(64)
  • ffmpeg 将视频帧转换成jpg、png等图片

    有时播放实时流的时候有截图的需求,需要将解码出来的图片保存本地或上传服务器,这时就需要将avframe中的数据编码成png、jpg等格式的图片,我们使用ffmpeg的相关编码器就可以实现功能。 首先需要查找图片编码器,比如jpg为AV_CODEC_ID_MJPEG,png为AV_CODEC_ID_PNG 示例代码: 有了

    2024年02月02日
    浏览(40)
  • Java实现视频(mp4/flv/..)及图片(jpg/jpeg/png/..)给前端调用

    本期内容总结: 在做后端开发的过程中,经常会处理到将视频或者图片返回给前端。下面将封装一种可以简单的方法,前端只需要拼接接口地址+地址链接,即可播放下载。

    2024年02月16日
    浏览(75)
  • 2022/7 用python批量将.mat文件转为.jpg/.png/.bmp格式图片

    网上看了一个下午都没找到能用的。。。抄来抄去都没说到点子上 mat文件是Matlab的数据存储的标准格式。 涉及到文件转换肯定要看数据的结构, 事实上别人的代码很难成功就是因为大家的mat文件的数据结构各不相同 照着这个一步一步来你肯定可以学会 1、第一段代码,包括

    2023年04月09日
    浏览(60)
  • PDF处理控件Aspose.PDF功能演示:使用Java将Base64字符串转换为PDF/JPG/PNG图像

    Aspose.PDF  是一款高级PDF处理API,可以在跨平台应用程序中轻松生成,修改,转换,呈现,保护和打印文档。无需使用Adobe Acrobat。此外,API提供压缩选项,表创建和处理,图形和图像功能,广泛的超链接功能,图章和水印任务,扩展的安全控件和自定义字体处理。 Aspose API支持

    2024年02月04日
    浏览(78)
  • 图片转换成png格式上传

    参数为图片地址(在浏览器可以直接访问的)

    2024年01月17日
    浏览(39)
  • node.js如何将webp转jpg图片

    在Node.js中,可以使用一些库来实现将WebP图像转换为JPEG。一个常用的库是 sharp ,它是一个快速、高效的图像处理库。以下是一个简单的Node.js脚本示例,演示如何使用 sharp 库将WebP转换为JPEG: 首先,确保已经安装了 sharp 库。可以通过运行以下命令进行安装: main.js,将指定路

    2024年01月21日
    浏览(34)
  • 宝塔Nginx环境安装pagespeed模块加速网站以及配置WebP格式图片加速(笔记)

    起因: 由于站点内很多本地图片每次打开要等很久于是就开始搜索相关内容 卡到了一个pagespeed这么一个模块而且折腾起来也比较简单所以就开始干活正式折腾。 正文: 首先我的环境是centos8+宝塔 【web环境lnmp(linux-ngingx-mysql-php)】 环境不一样的不要直接复制!!! 以下教

    2024年03月21日
    浏览(47)
  • Unity把png图片转换为sprite格式

    最近自己在做游戏项目,经常碰到导入的图片是png格式,但是要转换为sprite格式才能应用。以下是转换的简单方式,不需要代码的。                                                                        1选中要转换的png图片,在Inspector窗口查看属性   2在窗口中找

    2024年02月12日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包