使用方法
WebP转JPG是「选图、定质量、点转换」三步:
- 「选择 WebP 图片」点选本地文件;支持
image/webp,其它格式也能读但本页主打 WebP 转 JPG。 - 「JPG 质量」填 1~100,演示值 85;质量越高越清晰、文件越大,质量低则体积小但可能出现块噪。
- 点「开始转换」,或在质量框按 Enter。四张卡片给原图大小、JPG 大小、压缩率、输出尺寸;下方预览图可右键或点「下载 JPG」保存;对照表给出不同质量的体积参考。
- 想看默认效果按「载入示例」填入 85 质量(示例需你先选一张图,按钮只重置参数)。
WebP转JPG能解决什么
它把「网页优化格式」变回「万能格式」,适合三类场景:
- 老软件兼容:不少修图、排版、打印软件不认 WebP,转成 JPG 后能直接打开编辑,避免「图片损坏」提示。
- 社交与电商上传:部分平台后台只允许 JPG/PNG,WebP 会被拒,转 JPG 后顺利传图,且 85 质量已足够清晰。
- 体积瘦身:WebP 本身已小,但转成合适质量的 JPG 有时还能再压一点,配合压缩工具做二次优化时先统一格式更省事。
本页不做的事:不保留 WebP 的透明通道(JPG 无透明,透明区会变白);不做缩放或裁剪(只改格式与质量);不上传原图,转换失败不会替你重试。需要透明请改用 PNG 转换工具。
原理和变量
① 用了哪个具体函数:核心是 Canvas 的 canvas.toDataURL('image/jpeg', q/100),其中 q 是 1~100 的质量参数;先 drawImage 把原图绘到画布,再按 JPG 编码导出。解码用 URL.createObjectURL 配合 Image 对象。
② 关键参数为什么这样取:质量参数除以 100 是因为浏览器 API 要 0~1 的小数(q/100),且取值 1~100 比 0~1 更符合直觉;默认 85 是清晰与体积的行业常见平衡点,低于 60 块噪明显,高于 90 体积骤增收益小。
③ 遵循哪个标准:编码遵循 JPEG(ISO/IEC 10918)与 Canvas 2D 规范,toDataURL 输出标准 image/jpeg DataURL;透明处理遵循 JPG 规范(无 alpha,透明填白),不引入私有扩展。
④ 输入怎么变成输出:原 WebP 经 Image 解码得到像素,drawImage 绘到同尺寸画布,toDataURL('image/jpeg', 0.85) 编码出 JPG;输出尺寸等于原图像素宽高,文件大小由质量决定。
⑤ 边界与阈值:质量限 1~100,超出或为空提示并回退 85;未选图会提示「请先选择一张 WebP 图片」。超大图(如 8000px 以上)受画布内存限制可能失败,那时提示「图片过大,请改用更小尺寸」。
⑥ 常见误用的正确解释:JPG 是有损格式,反复转会累积画质损失,建议从原图一次转好;透明区域会变白而非保留;质量 100 不等于「无损失」,只是损失最小、体积最大;转换不改变像素尺寸,想缩小要用尺寸调整工具。
完整示例(数值仅作演示)
保持演示参数:质量 85,原图一张 800×600 的 WebP、约 120 KB。
- 原图大小:120 KB(WebP)。
- JPG 大小:约 96 KB(85 质量,体积更小)。
- 压缩率:约 −20%(相对原 WebP 变小)。
- 输出尺寸:800 × 600 像素(与原图一致)。
- 若质量降到 60:JPG 约 60 KB,但边缘出现轻微块噪。
这四组数字与页面默认卡片口径一致,真实结果以你选的图为准。
输入范围与对照表
WebP转JPG的对照表列出不同质量参数下的体积与清晰度参考(以同一张原 WebP 为基准,体积设为 100):
| 质量参数 | 相对体积 | 清晰度 | 适用场景 |
|---|---|---|---|
| 10 | 18% | 差,块噪明显 | 仅预览缩略 |
| 20 | 26% | 较差 | 极省流量 |
| 30 | 34% | 一般 | 聊天小图 |
| 40 | 43% | 中等 | 网页小图 |
| 50 | 52% | 中等偏上 | 普通配图 |
| 60 | 62% | 良好 | 社交分享 |
| 70 | 72% | 良好 | 博客配图 |
| 80 | 83% | 优 | 电商主图 |
| 85(演示) | 92% | 优,平衡点 | 通用推荐 |
| 90 | 97% | 近无损 | 印刷预备 |
| 95 | 99% | 极近无损 | 存档原图 |
| 100 | 100% | 最大体积 | 不推荐 |
| 96 | 99.2% | 极高 | 精细存档 |
| 97 | 99.5% | 极高 | 精细存档 |
| 98 | 99.7% | 极高 | 精细存档 |
| 99 | 99.9% | 近似原图 | 极少使用 |
对照表是体积参考,非你图片的真实结果;真实大小以转换后卡片显示为准,二者口径不同。
结果边界和舍入
体积性质:卡片显示的是真实编码后的字节数(KB),不是估算;压缩率 =(JPG − 原图)÷ 原图,负数表示变小。
什么时候会提示:未选图提示「请先选择一张 WebP 图片」;质量不是 1~100 的整数提示并回退 85;图片过大或解码失败提示「图片过大或无法读取」。正常 WebP 几乎不报错。
透明与色彩:WebP 的透明通道在 JPG 里变白;输出为 sRGB 标准色域,特殊色域可能略偏。转换不改变像素尺寸,只改格式与质量。
结果用途:这是本地编码结果,下载后即可用;再次转换会二次有损,重要原图请保留备份不要反复转。
常见问题
转换后透明背景变白了?
正常。JPG 格式不支持透明通道(alpha),画布默认底色是白,所以 WebP 的透明区域会填成白色。需要保留透明请改用 PNG 转换工具。
质量 100 是不是无损?
不是。JPG 本身是有损压缩,100 只是损失最小、体积最大;真正无损要用 PNG 或 WebP 无损模式。本页只输出 JPG,故无法做到数学无损。
质量填多少最合适?
日常用 80~90:社交分享 60~70、电商主图 80、印刷预备 90。演示值 85 是清晰与体积的通用平衡点,低于 60 块噪会明显。
原图会传到服务器吗?
不会。图片只在你浏览器里用 Canvas 解码和编码,不发起任何上传请求;可在 Network 面板复查,点「开始转换」时看不到任何外发。
为什么转完体积反而变大了?
若原 WebP 已高度压缩,转成高质量 JPG 可能略大;把质量调到 70~80 通常会更小。体积对比取决于原图复杂度,不是必然变小。
能同时转很多张吗?
本页一次处理一张。批量需求请逐张选图转换,或后续用脚本批量;为避免卡顿,超大图建议先缩小再转。
输出尺寸和原图不一样?
不应该。本页只改格式与质量,不改像素,输出尺寸应等于原图。若发现尺寸变化,可能是原图带旋转元数据被画布归正,属正常行为。
转出来的 JPG 打不开?
极少见。多为原文件损坏或浏览器画布内存不足;换一张图或刷新页面重试。本页输出标准 image/jpeg,主流软件都能打开。