2010-07-07 111 views
3

我想将用户(以各种格式和条件)上传的图像转换为矢量图像格式,例如.eps。我主要使用PHP。服务器端将光栅图像转换为矢量图像

有哪些选择?

+0

[SVG转换为PNG/JPEG/BMP和副版本的可能重复? ](http://stackoverflow.com/questions/4021756/coverstion-of-svg-into-png-jpeg-bmp-and-vice-versa) – Gordon 2010-11-02 08:28:02

回答

4

在GPU下面发布了少量的自动移植软件项目(例如,POTRACE,你可以通过系统命令运行,我无法证明它们的质量,跟踪几乎总是需要一些人工监控元素来避免看起来像一团乱糟糟的陶器,但直到你尝试才会知道,而不是通过PHP触发跟踪器,我只是使用PHP来将传入的图像保存到临时文件夹,然后通过cronjob(单向或双向)每分钟),分批抓取文件夹(你可以用这种方式进行步调,避免它被用作拒绝你的网站的方式)

我正在考虑做一些稍微类似的事情(虽然不是图形相关)为即将到来的项目,我正在考虑在桌面计算机上完成所有繁重的工作,在将它们传回服务器之前,它将获取所有传入的文件并对其进行处理。对于在Web服务器上运行这种复杂的资源密集型脚本,我感到有点紧张。

-7

PHP不是图像编辑器。它是超文本预处理器。
您必须移动到serverfault.com,或者在某些图像处理资源上更好,并要求在那里提供一些命令行实用程序,该实用程序可以使用system()命令从PHP运行。

+3

我明白PHP不是图像编辑器。 PHP可以与许多有用的库(如GD和ImageMagik)进行交互,而不依赖于system()。 – 2010-10-07 21:22:03

+0

@Jon我不能说GD是有用的,但总的来说 - 是的。它甚至可以通过COM端口控制液压机。这并不意味着液压机的问题在这里适合。 – 2010-10-07 21:26:51

+1

@ Col.Shrapnel除非我错过了一些东西,PHP是Turing Complete,所以你可以对它进行任何可计算的编程,并且估计矢量来表示光栅图像当然是可计算的。我也没有看到这个问题与其他无数其他问题有什么不同,这些问题有“使用xxx库”作为有效的响应(例如,“我在.NET中使用什么正则表达式解析此页面上的图像src?” - >“你应该跳过正则表达式并使用HtmlAgilityPack”)。 – jball 2011-11-23 14:33:37

0

使用过程中的Imagetracer是一个免费的开源(公共领域)库和应用程序,可以在服务器端使用。免责声明:我做了这些。

您可以使用ImageTracer.jar

https://github.com/jankovicsandras/imagetracerjava

像这样用PHP:

<?php exec("java -jar ImageTracer.jar input.png outfilename output.svg"); ?>

您也可以使用JavaScript版本的Node.js服务器上这边是示例代码:

https://github.com/jankovicsandras/imagetracerjs/blob/master/nodetest/nodetest.js

相关问题