首页 > 其他分享 >使用webp格式拯救你的硬盘

使用webp格式拯救你的硬盘

时间:2023-08-05 09:55:44浏览次数:40  
标签:WebP jpg webp file 格式 root 硬盘

使用webp格式拯救你的硬盘

什么是webp格式?

WebP 是一种现代图像格式,可提供卓越的无损和 网络上图像的有损压缩。使用 WebP、网站管理员和网络 开发人员可以创建更小、更丰富的图像,使 Web 更快。

与PNG相比,WebP无损图像的尺寸小了26%。 有损图像比同等 SSIM 质量指数下的同类 JPEG 图像小 25-34%。

无损 WebP 支持透明度(也称为 alpha 通道) 只需增加 22% 的字节。对于有损 RGB 压缩的情况 是可以接受的,有损WebP还支持透明度,通常提供 与PNG相比,文件大小小3×。

有损、无损和透明在动画 WebP 图像中都受支持, 与 GIF 和 APNG 相比,它可以提供更小的尺寸。

webp格式怎么工作?

有损 WebP 压缩使用预测编码对图像进行编码,相同 VP8 视频编解码器用于压缩视频中的关键帧的方法。预测 编码使用相邻像素块中的值来预测值 在一个块中,然后只编码差异。

无损 WebP 压缩使用已经看到的图像片段,以便 精确重建新像素。如果没有,它也可以使用本地调色板 找到有趣的匹配。

webp格式对比

文件名: microsoft365_vision.webp [2/2]

图片大小: 559.7KB

修改日期: 2023/07/03 13:23:47

图片信息: 3840x2160 (WebP,RGB24(Lossy))

文件名: microsoft365_vision.jpg [2/2]

图片大小: 4.7MB

修改日期: 2020/08/15 09:37:32

图片信息: 3840x2160 (Jpeg,YUV444,ICC profile(sRGB))

文件名: 100852103_p0.webp [1/1]

图片大小: 1.2MB

修改日期: 2023/07/03 13:23:46

图片信息: 4950x2752 (WebP,RGB24(Lossy))

文件名: 100852103_p0.jpg [1/1]

图片大小: 10.4MB

修改日期: 2023/07/03 13:26:54

图片信息: 4950x2752 (Jpeg,YUV420)(原图再压缩过)

可以看出webp格式对比jpg格式更优。

如何快速将图片转换成webp?

使用以下python代码,可以将该文件下的所有jpg和png格式的子文件转换成webp

import os
from PIL import Image

def pic_webp(root, file):
    # 读入文件
    im = Image.open(root + "/" + file)
    # 保存
    im.save(root + "/" + file.split('.')[0] + ".webp")
    print(file + "转换webp格式成功")
    # 删除原文件
    os.remove(root + "/" + file)

def walk_files(path):
    for (root, dirs, files) in os.walk(path):
        for file in files:
            if ((file.endswith(".png")) or (file.endswith(".jpg")) or (file.endswith(".jpeg") )):
                pic_webp(root, file)

walk_files("./")

可以到仓库下载exe版本直接运行

jpg和png转换webp

标签:WebP,jpg,webp,file,格式,root,硬盘
From: https://www.cnblogs.com/jonil/p/17607542.html

相关文章

  • sqlfluff sql linter 以及自动格式化工具
    sqlfluffsqllinter以及自动格式化工具,支持多数据库方言,以及模版代码,比较适合ELT类型的数据分析应用,同时对于dbt也是比较友好的特性多种数据库方言支持支持模版(jinja,dbt)可以很好的集成ci/cddbt参考效果因为dbt使用了jinja模版引擎,同时sqlfluff提供了dbt的模版包......
  • js中将数字格式化成内存的形式
    constformatSize=(size)=>{if(size<1024){returnsize+"b";}elseif(size<1024*1024){return(size/1024).toFixed(2)+"KB";}elseif(size<1024*1024*1024){retur......
  • 对于Spring中的@Scheduled注解,cron表达式的格式与传统的cron表达式有所不同。
    @Scheduled(cron="00*/1**?")对于Spring中的@Scheduled注解,cron表达式的格式与传统的cron表达式有所不同。Spring的cron表达式包含6个字段,分别是秒分时日月星期。其中,秒是可选的。根据您提供的@Scheduled(cron="00*/1**?"),这表示任务会在每个小时的0分0秒执......
  • 从excel读数据的格式
    问题:从excel中读取的数据应是什么格式呢?   1pytest中需要参数化时,需要的[(valuea,valueb)(valuex,valuey)]-------------列表内是元祖importpytestdefadd(x,y):[email protected]("x,y,expected",[(1,1,2),(2,3,5),......
  • 数据格式的处理 echarts数据改为 Table表格格式的数据
      前景后端返回的echarts展示数据格式,既要展示echarts又要展示table表格,echarts的数据格式为下面{xData:['Mon','Tue','Wed','Thu','Fri','Sat','Sun'],yData1:[10,52,200,334,390,330,220],yData2:......
  • C#格式化字符串
     字符串格式String.Format和WriteLine都遵守同样的格式化规则。格式化的格式如下:"{N[,M][:formatString]}",arg1,...argN,在这个格式中: 1)N是从0开始的整数,表示要格式化的参数的个数.2)M是一个可选的整数,表示格式化后的参数所占的宽度,如果M是负数,则左对齐,如果M是......
  • web扫描里 还是御剑、wwwscan、WebPathBrute好用 内置的字典强大啊
    我想只要有接触Web安全的小伙伴们,应该没有一个不知道御剑通常网站后台扫描工具都是利用后台目录字典进行爆破扫描,字典越多,扫描到的结果也越多而常用的网站后台扫描工具wwwscan、御剑、dirbuster和cansina正文这里简单优化了一下以前的工具,修正了一些问题。御剑新版+:https://pan.ba......
  • 无涯教程-Perl - 格式化
    Perl使用称为“formats”的模板来输出内容。要使用Perl的格式函数,必须先定义一种格式,然后才能使用该格式写入格式化的数据。定义格式以下是定义Perl格式的语法-formatFormatName=fieldlinevalue_one,value_two,value_threefieldlinevalue_one,value_two.这里的For......
  • webpack5 devServer浏览器打开显示 can not get
    webpack5中通过使用webpack-dev-server插件,配置devServer来浏览器启动页面,对于单页面,我们可以直接配置打开首页,多页面,可以配置打开一个文件目录,选择各个页面的目录当我们配置好webpack后,执行npmrundev,浏览器打开经常会看到显示  cannotget,即无法匹配服务器匹配的目......
  • 《Ext详解与实践》节选:自定义单元格的显示格式
    有时候,需要在Grid中显示一个链接,或根据数字的大小显示不同的颜色,又或者使用固定格式显示记录编号等,这就需要自定义单元格的显示格式。在Ext的Grid可以很容易的实现自定义单元格的显示格式。在定义Grid的ColumnModel的时候,在需要自定义显示格式的列中加入参数renderer,该参数指向一个......