image - 用于将 TIFF 或 PNG 或 JPEG 转换为 SVG 的 Java API

标签 image svg

我需要将 TIFF 或 PNG 或 JPEG 转换为 SVG。是否可以转换为 SVG。通过将 PNG/TIFF/JPEG 转换为 SVG,是否有机会减小尺寸?

最佳答案

Imagetracer 是一个免费的开源(公共(public)领域)库和应用程序,可能很有用。免责声明:我做了这个。

获取 ImageTracer.jar

https://github.com/jankovicsandras/imagetracerjava

然后你可以像这样从 CLI 使用它:
java -jar ImageTracer.jar input.png outfilename output.svg ltres 1 qtres 1 pathomit 16 colorsampling 1 numberofcolors 4 mincolorratio 0.02 colorquantcycles 3 scale 0.5 simplifytolerance 0 roundcoords 0 desc 0 blurradius 5 blurdelta 20
从输入图像中得到一个分色后的 SVG,它也被缩小到原始大小的一半。

光栅到矢量的转换通常不会自行减小文件大小,尤其是 SVG 输出,因为 SVG 是一种基于 XML 的冗长文本格式,没有经过压缩。但这在很大程度上取决于输入图像:保存为 BMP 的具有几百万像素分辨率的简单黑白 Logo 可能会从兆字节减少到千字节,但彩色 JPEG 照片可能会从数十千字节到兆字节的 SVG 输出。

您也可以使用 Inkscape(或 Potrace)对此进行测试:结果 SVG 通常大于输入图像。

关于image - 用于将 TIFF 或 PNG 或 JPEG 转换为 SVG 的 Java API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8978265/

相关文章:

javascript - 使用替代文本查找图像标签

javascript - 动画 SVG 多边形

html - 用于模糊图像的 Svg

java - 查找图像二进制对象的周长

javascript - 如何更改与源关联的图像

ios - 如何制作像 Facebook 或 Twitter 这样的图像查看器? iOS

javascript - 第二次转换不起作用

jquery - 使用 <use> 元素时,SVG 单击事件不会触发/冒泡

javascript - d3.js -- 连接两个转换后的 svg 元素的线

jQuery:检查图像是否存在