JPG 转 SVG - 以及你的照片为什么该继续当 JPG
来到这个页面的东西几乎全是照片,而描摹照片是行不通的。这句话值得放在最前面说,而不是等你白等一场之后再说。描摹用平涂色块重建图像,这适合由平涂色块构成的徽标,对由数百万级平滑过渡构成的照片则彻底失败。我们实测过:一张 14.1 KB 的照片描摹成了由 607 条路径构成的 151.5 KB SVG - 十倍以上的体积,摆在原图旁边还明显斑驳。这个工具仍然会照做,但它会先数一数你图像里的颜色,并在答案注定让人失望时提醒你。JPG 转 SVG 真正称职的地方是:扫描的线稿、一个签名、别人用 JPEG 发给你的徽标,或者任何要驱动切割机的平涂图稿。
如何使用此工具
放入你的 JPG
把文件拖到上方方框里或点击选择,最大 20 MB。文件按内容检查,任一边超过 4000 像素的图像会在描摹前先缩小,因为多出来的像素只花时间,不增加保真度。
读一读颜色警告
第一次描摹之后,面板会报告你的图像是否具有照片级的颜色丰富度。如果它这么说,就请相信它 - 那是从文件里实测出来的,意味着无论你怎么调设置,输出都会又大又粗略。
从很少的颜色开始
对扫描的签名或线稿来说,两种颜色通常就是对的,能得到最小也最干净的结果。只在预览确实变好的时候才往上加。尤其对 JPEG 而言,较低的颜色数还能把压缩瑕疵盖过去,而不是沿着它们描一圈。
为 JPEG 噪点调高最小面积
JPEG 压缩会留下淡淡的块状瑕疵,而描摹器会忠实地把它们勾成一个个小斑点。把最小面积提高到 16 或 32 像素可以丢弃这些,通常能大幅降低路径数而看不出任何损失。
查看体积对比,再复制或下载
预览下方,面板会把 SVG 与你的原图作对比,并直白地说明哪一个更大。如果 SVG 大了好几倍而且看起来并不更好,那就是答案了 - 留着那个 JPEG。
常见问题
我能把照片转成 SVG 吗?
你可以跑一遍,但你不会喜欢那个结果。描摹是用平涂形状去近似一张图像,而照片除了平滑过渡什么都不是。我们的测试照片输出比 JPEG 大了 10.7 倍,而且明显斑驳。如果你需要一张可无限缩放的照片,诚实的答案是没有任何格式能提供。
这个工具怎么知道我的图像是照片?
它会统计不同颜色的数量。区分非常鲜明:我们那个黑色徽标有 244 种不同颜色,一张平涂插画有 150 种,而那张照片有 59,629 种。任何达到几万量级的东西,除了名字之外就是照片,面板会直接说出来,而不是让你等完之后才发现。
JPG 转 SVG 究竟在什么场合真正好用?
恰好被存成了 JPEG 的平涂图稿。扫描的线描图、签名、印章、客户用邮件发来的一个徽标,以及用于刻字或激光雕刻的图稿。只要它主要是几种实色加上清晰的边缘,无论它装在什么容器里,都能干净地描摹出来。
为什么我描摹出的签名上有好几百个小斑点?
是 JPEG 压缩瑕疵。这个格式存储的是像素块的近似值,会在看上去是纯白纸面的地方留下淡淡的斑块,而描摹器会把每一个都勾出轮廓。把最小面积提高到 16 或 32 像素,并把颜色数降到两种,它们就会消失。
描摹之前我该先修一下 JPEG 吗?
对扫描件来说帮助很大。描摹之前先提高对比度,让墨迹足够黑、纸面足够白,描摹器的活儿就会轻松得多 - 中间灰阶越少,划分出的区域就越少,路径也越少,最终的 SVG 也就越小、越干净。
描摹要花多长时间?
一般图像一两秒,又大又细的东西会更久。它在一个 Web Worker 里运行,所以页面全程保持流畅,每完成一个颜色层进度条就往前走一格。取消是真的停止工作,而不是让它在你看不见的地方继续跑。
为什么输出比我的 JPEG 还大?
JPEG 恰恰极其擅长 SVG 最不擅长的那件事。它靠丢弃没人看得见的细节,很便宜地存下平滑的颜色变化;而 SVG 必须为每一个区域的边界逐个写出坐标。图像越丰富,边界就越多,这笔交易也就越不划算。
结果能在 Illustrator 或 Inkscape 里编辑吗?
能 - 输出就是带平涂填充的普通 SVG 路径,两者都能原生打开和编辑。这往往才是描摹的真正用途:拿到一个粗糙的矢量起点,再动手清理它,而不是指望任何自动描摹器直接给你一个成品文件。
我的照片会被上传到什么地方吗?
不会。解码和描摹都在你的浏览器里、在一个后台线程中完成,所以图像不会离开你的设备,也不会被存储。这一点在这里格外重要,因为人们拿来描摹的东西往往是扫描的文件和签名。
这个工具和 PNG 版本有什么区别?
只有页面接受的输入格式不同;描摹过程完全一样。值得一提的区别是,JPEG 带有 PNG 通常没有的压缩瑕疵,所以 JPEG 来源更能从较高的最小面积设置中获益,用来丢弃那些瑕疵造成的小斑点。
您可能还需要
有问题吗? 报告问题