|
avif是新的图片格式,AVIF 格式支持全分辨率的 10 位和 12 位色彩以及 HDR,支持无损压缩广色域 HDR 图层覆盖,允许图像不同图层采用不同压缩率。
avif在小体积图片压缩下优势巨大,缺点是解码比较慢
现在国内两大购物网站和哔哩哔哩都已经使用了avif,Windows 21H2后原生支持avif
jxl挺好的,可惜系统和浏览器都不支持,heic没有好用的编码器,也只能用avif了,压套图节省巨量储存空间
下面的bat可以遍历子文件夹,自动转换成avif图片,不会覆盖原图,如果要改图片质量,直接改-a cq-level=的数字,数字越大输出文件越小越模糊,数字越小输出文件越大越清晰,建议18~36内选一个
@echo off
set time_begin=%time%
set /A time_begin_minute=%time_begin:~3,2%
set /A time_begin_second=%time_begin:~-5,2%
set /A time_begin_millisec=%time_begin:~-2,2%
if exist "%~1"\ cd "%~1"
for /r %%A in (*.png, *.jpg, *.bmp, *.jpeg) do (
if not exist "%%~dpA%%~nA.avif" (
avifenc.exe -j all -y 444 --ignore-xmp --ignore-exif --min 0 --max 63 --minalpha 0 --maxalpha 63 -a end-usage=q -a cq-level=20 -a tune=ssim -a color:enable-chroma-deltaq=1 -a color:enable-qm=1 -a color:deltaq-mode=3 "%%A" -o "%%~dpA%%~nA.avif"
)
)
set time_end=%time%
set /A time_end_minute=%time_end:~3,2%
set /A time_end_second=%time_end:~-5,2%
set /A time_end_millisec=%time_end:~-2,2%
if %time_end_millisec% lss %time_begin_millisec% set /A time_end_millisec+=100&set /A time_end_second-=1
if %time_end_second% lss %time_begin_second% set /A time_end_second+=60&set /A time_end_minute-=1
set /A minute=time_end_minute-time_begin_minute
set /A second=time_end_second-time_begin_second
set /A millisec=time2_millisec-time1_millisec
echo 程序运行开始时间:%time_begin% 结束时间:%time_end%
echo 程序运行时间为%minute%分%second%秒%millisec%毫秒
PAUSE
|
|