在浏览器中本地将 PNG 图像转换为 JPEG/JPG。上传 PNG,调整压缩质量,预览结果并下载更小的 JPEG——适合文件体积比无损保真更重要的场景。
转换原理
PNG 在浏览器中解码,光栅化到 HTML canvas,再通过 canvas.toDataURL('image/jpeg', quality) 导出,其中 quality 为滑块值(1–100)映射到 0.01–1.0。JPEG 使用有损压缩:低质量下细腻渐变与锐利边缘可能出现块状伪影或色带。
仅 image/png 输入通过校验。源 PNG 的透明度会合成到默认背景(通常为白色),因为 JPEG 没有 alpha 通道。
适用场景
压缩 PNG 截图以便发邮件或上传 CMS;为拒绝 PNG 的平台转换无损资源;或在用服务端工具自动化前批量试探质量权衡。
限制
透明像素会被压平——半透明边缘可能出现光晕。文字与纯色 UI 截图在质量低于 70 时明显劣化。大尺寸占用 RAM;极宽全景图可能在移动浏览器上失败。EXIF、ICC 配置文件与文本 PNG chunk 不会保留到 JPEG 输出中。
示例
一张 800×600、quality 90 的 PNG 通常会得到比原 PNG 小几十个百分点的 JPEG,轻微压缩仅在近看时可见。