java实现将Webp转为jpg格式方式

 更新时间:2024年07月05日 09:42:56   作者:墨笔之风  
这篇文章主要介绍了java实现将Webp转为jpg格式方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

java实现Webp转为jpg格式

直接上工具

需要的相关依赖:<!--webp 转jpeg 依赖-->

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

代码展示:

 
import com.luciad.imageio.webp.WebPImageReaderSpi;
import com.luciad.imageio.webp.WebPImageWriterSpi;
 
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import javax.imageio.ImageIO;
import javax.imageio.ImageReader;
import javax.imageio.ImageWriter;
import javax.imageio.spi.IIORegistry;
import javax.imageio.stream.ImageInputStream;
import javax.imageio.stream.ImageOutputStream;
 
/**
 * <p>
 * webg图片转换为jpg
 * </p>
 *
 * @author 沙龙果
 * @Filename JpegWebgClass
 * @since 2024/1/4
 */
public class JpegWebgClass {
    public static void main(String[] args) {
        // 注册WebP ImageIO插件
        IIORegistry registry = IIORegistry.getDefaultInstance();
        registry.registerServiceProvider(new WebPImageReaderSpi());
        registry.registerServiceProvider(new WebPImageWriterSpi());
        List<String> webpList = new ArrayList<>();
        webpList.add("C:\\Users\\Administrator\\Desktop\\changku\\src\\main\\resources\\upload\\2.webp");
        webpList.add("C:\\Users\\Administrator\\Desktop\\changku\\src\\main\\resources\\upload\\3.webp");
        webpList.add("C:\\Users\\Administrator\\Desktop\\changku\\src\\main\\resources\\upload\\4.webp");
        int i = 1;
        for (String webp : webpList) {
            try {
                // 读取WebP格式图片
                File input = new File(webp);
                ImageInputStream inputStream = ImageIO.createImageInputStream(input);
                ImageReader reader = ImageIO.getImageReadersByMIMEType("image/webp").next();
                reader.setInput(inputStream);
                BufferedImage image = reader.read(0);
 
                // 将图片转换为JPG格式
                String m = "C:\\Users\\Administrator\\Desktop\\changku\\src\\main\\resources\\jpeg\\";
                String jpeg = "webp" + (i++) + ".jpeg";
                File output = new File(m + jpeg);
                ImageOutputStream outputStream = ImageIO.createImageOutputStream(output);
                ImageWriter writer = ImageIO.getImageWritersByFormatName("jpeg").next();
                writer.setOutput(outputStream);
                writer.write(image);
 
                // 关闭IO流
                inputStream.close();
                outputStream.close();
                reader.dispose();
                writer.dispose();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }
}

如何将webp转成jpg(代码,在线工具)

越来越多的网站开始采用WebP作为网站图片展示格式,例如百度,几乎全部都采用了WebP进行图片展示,用来提高网站的图片加载速度和用户体验。但是WebP在分享和预览上存在很多问题,目前并没有被广泛接受。那么如何将WebP快速转换成标准的JPG格式了。可以用以下的方式。

1. Windows平台

>>>> from PIL import Image
>>>> im = Image.open("text.webp").convert("RGB")
>>>> im.save("test.jpg", "jpeg")

这是通过Python将WebP转换成jpeg

2. Mac平台

安装imagemagick,通过imagemagick的terminal命令行将webp转换成jpg

>>> brew install imagemagick
>>> magick input.webp output.jpg

3. 在线工具

使用AnyWebP免上传转换webp为JPG,百分百免费。

网址:WebP to jpg

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 详解Java的回调机制

    详解Java的回调机制

    最近学习java,接触到了回调机制(CallBack)。初识时感觉比较混乱,而且在网上搜索到的相关的讲解,本文介绍了Java的回调机制,有兴趣的同学可以了解一下
    2016-10-10
  • Java中Date、LocalDate、LocalDateTime、LocalTime、时间戳之间的相互转换代码

    Java中Date、LocalDate、LocalDateTime、LocalTime、时间戳之间的相互转换代码

    这篇文章主要介绍了Java中日期时间转换的多种方法,包括将Date转换为LocalDateTime、LocalDate等,以及将时间戳转换为LocalDateTime,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2025-04-04
  • Java String 和StringBuffer的详解及区别

    Java String 和StringBuffer的详解及区别

    这篇文章主要介绍了Java String 和StringBuffer的详解及区别的相关资料,需要的朋友可以参考下
    2017-05-05
  • JAVA中的构造函数(方法)

    JAVA中的构造函数(方法)

    这篇文章主要介绍了JAVA中的构造函数(方法),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-03-03
  • java实现树形菜单对象

    java实现树形菜单对象

    这篇文章主要为大家详细介绍了java实现树形菜单对象,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-05-05
  • Java中Date类和Calendar类的常用实例小结

    Java中Date类和Calendar类的常用实例小结

    这篇文章主要介绍了Java中Date类和Calendar类的常用实例小结,是Java入门学习中的基础知识的运用,需要的朋友可以参考下
    2015-08-08
  • JVM内存设置与查看方式

    JVM内存设置与查看方式

    文章介绍了如何设置JVM内存参数,包括-Xmx、-Xms、-Xmn、-Xss四个参数的设置方法,并提供了在命令提示符、集成开发环境(如Eclipse)和服务器环境中设置JVM内存分配的详细步骤,此外,还介绍了如何通过`Runtime.getRuntime()`方法查看JVM内存信息
    2026-01-01
  • java实现点击按钮事件弹出子窗口

    java实现点击按钮事件弹出子窗口

    这篇文章主要为大家详细介绍了java实现点击按钮事件弹出子窗口,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-07-07
  • Java 重写与重载方法与区别详解

    Java 重写与重载方法与区别详解

    本篇文章通过实例详细介绍了重写与重载,以及他们的区别,需要的朋友可以参考下
    2017-04-04
  • Java中抽象类的作用及说明

    Java中抽象类的作用及说明

    这篇文章主要介绍了Java中抽象类的作用及说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-11-11

最新评论