我需要将TIFF或PNG或JPEG转换为SVG。 是否可以转换为SVG。 通过将PNG / TIFF / JPEG转换为SVG,是否有机会减小尺寸?
参见/questions/1861382/convert-png-to-svg
如果原始图片不是重新格式化的矢量图像,它将不会减小尺寸。 如果PNG(或类似格式)使用高分辨率的简单平面形式,则可以,它将减小尺寸(但是PNG已经很好地压缩了平面)
Imagetracer是一个免费且开源的(公共域)库和应用程序,可能会有用。免责声明:我做到了。
从获取ImageTracer.jar
/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时具有几百万像素分辨率的简单黑白徽标可能会从兆字节减少到千字节,但是彩色JPEG照片的SVG输出可能会从几十千字节变为兆字节。
您也可以使用Inkscape(或Potrace)进行测试:结果SVG通常大于输入图像。
看看蜡染:
/batik/
听起来它可能至少应该满足您的大多数要求。如果蜡染不支持某种格式,则始终可以获取一个附加库以将其读取为某些"标准"位图格式,然后使用蜡染将其转换为SVG。
谢谢保罗。 从位图转换为svg会减少图像的大小?
您要将栅格图像包装在SVG容器中,还是要将栅格跟踪到矢量?如果是后者,那么这不是一个简单的问题,但是您可以使用跟踪库来执行此操作。无法保证文件大小会减小。
如果觉得《java png转svg工具_关于图像:将TIFF或PNG或JPEG转换为SVG的Java API》对你有帮助,请点赞、收藏,并留下你的观点哦!