文件格式任意转换助手Transfer Any File

离线 · 无上传 · 浏览器本地完成Offline · no uploads · runs in the browser

WebP 转 JPEG——给不收 WebP 的接收方兜底,透明铺白WebP to JPEG for recipients that will not take WebP

这条路存在的理由通常不是压缩,而是「对方打不开」:一些邮件客户端、老版本 Office、以及某些 CMS 的上传校验都不接受 WebP。做法是把 WebP 解码到画布、铺白、再交给 JPEG 编码器,于是有两件事一定发生——透明变成白底,以及一次全新的有损编码。原始文件还在的话,交付 JPEG 从原始 PNG 走会更干净;这条适合的是「手里只有 WebP」的情形。The reason this route exists is usually not compression but “the other side cannot open it”: some mail clients, older Office builds and certain CMS upload validators will not take WebP. The mechanics are decode onto a canvas, fill white, hand it to the JPEG encoder — which means two things certainly happen: transparency becomes white, and a fresh lossy encode is performed. If the original is still around, shipping JPEG from the PNG is cleaner; this route is for the case where WebP is all you have.

一批转换结果卡片,含文件名、体积与下载入口
一次混合批量,一个 ZIP 下载One mixed batch, one ZIP download

这条链路怎么走How the route runs

WebPWebP JPEGJPEG

共 1 步,由扩展的路径搜索自动选出,中间产物不落盘。1 step, chosen by the extension's own path search; intermediate results never touch the disk.

会保留什么What carries over

  • 透明铺纯白底,不会带出黑底或半透明残留Transparency flattens onto pure white — never a black background, never a translucent fringe
  • 像素尺寸原样保留,除非你设了最长边(800–4096 px)Pixel dimensions are kept unless you set a longest edge (800–4096 px)
  • 质量档 40%–90% 与目标体积 20 KB–2 MB 照旧,只在链路末尾那次编码生效Quality steps of 40%–90% and target sizes of 20 KB–2 MB apply as usual, at the route’s final encode only
  • 静态 WebP 正常处理;动图 WebP 得到浏览器解码出的那一帧A still WebP is handled normally; an animated one yields the frame the browser decoded
  • 一批最多 200 张、单个 100 MB 上限,结果可一次打包成 ZIPUp to 200 images per batch and 100 MB each, downloadable as one ZIP

如实说明的限制What it does not do

  • WebP → JPEG 是第二次有损编码,只减不加;能回到原始文件请从原始文件走WebP → JPEG is a second lossy pass and only subtracts; go back to the original file when you have it
  • 无损 WebP 的精确像素回到 JPEG 必然消失The exactness of a lossless WebP cannot survive the way back into JPEG
  • 动图只出一帧,而且「丢帧」这条提示目前只为 GIF 写——实现只对 GIF 数帧An animation yields one frame, and the “frames lost” notice is currently written only for GIF — the implementation counts frames only there
  • 产物不带元数据:画布里只有像素,编码出来的 JPEG 里也只有像素No metadata is carried: the canvas holds pixels and the encoder is handed pixels

实操提示Working with it

  • 如果目的只是「更小」,别在两个有损格式之间转手——从原始文件重新编码才划算If the goal is simply “smaller”, do not hand a picture between two lossy formats — re-encoding from the original is the cheaper move
  • 输出面板的设置会被记住,同一批的所有文件共用一次读取The panel settings persist and apply to the whole batch from a single read

常见问题Questions people actually ask

为什么透明区域变成一大块白?Why did the transparent area turn into a white block?

JPEG 没有 alpha 通道,必须铺一个不透明底色,本项目铺的是纯白。若白底不合适,请留 WebP 或输出 PNG。JPEG requires an opaque background and has no alpha channel; this route fills pure white. If white is wrong for the picture, keep WebP or output PNG instead.

为什么图比原来糊了一点?Why does it look softer than the original?

因为这是第二次有损编码:WebP 那次已经改过像素,JPEG 这次再改一遍。选更高的质量档能减轻,但换不回已经丢掉的信息。Because this is the second lossy pass: WebP had already changed the pixels and JPEG changes them again. A higher quality step softens the damage but cannot bring back what was already discarded.

动图 WebP 怎么办?What about animated WebP?

栅格化只产出一张静态图,动图会只剩首帧。本项目不能编 GIF,所以「保住动画」这件事不在这条链路的能力范围内。Rasterising produces a still, so the animation ends up as its first frame. The extension cannot encode GIF either, so “keep the animation” is outside what this route can do.

不需要账号,也不需要联网:装好扩展后点图标,在新标签页里打开工作台,文件从磁盘直接选。No account and no network: install the extension, click its icon, and the workbench opens in a new tab reading straight off your disk.