【问题标题】:Server-side conversion of raster images to vector images光栅图像到矢量图像的服务器端转换
【发布时间】:2020-08-06 03:20:25
【问题描述】:

我想将用户上传的图像(各种格式和条件)转换为矢量图像格式,例如 .eps。我主要在 PHP 中工作。

存在哪些选项?

【问题讨论】:

标签: php image-processing vectorization


【解决方案1】:

有少量在 GPU 下发布的自动跟踪软件项目(例如,POTRACE,您可以通过系统命令运行它们。我无法证明它们的质量。跟踪几乎总是需要一些人工监督来避免看起来像一堆破陶器的东西,但除非你尝试,否则你不会知道。我不会通过 PHP 触发跟踪器,而是使用 PHP 简单地将传入的图像保存到一个临时文件夹,然后通过 cronjob(一两个- 每分钟),分批浏览保存文件夹(您可以以这种方式调整它并避免将其用作对您的站点进行 DoS 攻击的方式)。

我正在考虑为即将到来的项目做一些稍微类似的事情(尽管与图形无关),并且我正在考虑在台式计算机上完成所有繁重的工作,这将获取所有传入的文件并在 FTP 传输之前对其进行处理回到服务器。我对在 Web 服务器上运行任何像这样的复杂资源密集型脚本感到有些紧张。

【讨论】:

    【解决方案2】:

    Inkscape 绝对可以做到这一点

    这里是它支持的格式列表What formats can Inkscape import/export?

    当然也可以和命令行或者exec()命令一起使用Can Inkscape be used from the command line?

    【讨论】:

      【解决方案3】:

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

      您可以使用 ImageTracer.jar 来自

      https://github.com/jankovicsandras/imagetracerjava

      像这样使用 PHP:

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

      您也可以在服务器端使用带有 Node.js 的 JavaScript 版本,示例代码如下:

      https://github.com/jankovicsandras/imagetracerjs/tree/master/nodecli

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

      【讨论】:

        【解决方案4】:

        PHP 不是图像编辑器。它是一个超文本预处理器。

        您必须转到 serverfault.com,或者在某些图像处理资源上更好,并在那里请求一些可以使用 system() 命令从 PHP 运行的命令行实用程序。

        【讨论】:

        • 我了解 PHP 不是图像编辑器。 PHP 可以在不依赖 system() 的情况下与许多有用的库(例如 GD 和 ImageMagik)进行交互。
        • @Jon 我不能说 GD 有什么用,但总的来说 - 是的。它甚至可以通过 com 端口控制液压机。这并不意味着关于液压机的问题适合这里。
        • @Col.Shrapnel 除非我遗漏了什么,PHP 是图灵完备的,所以您可以在其上编写任何可计算的程序,并且估计表示光栅图像的向量当然是可计算的。我也看不出这个问题与无数其他将“使用 xxx 库”作为有效响应的问题有何不同(例如,“我使用什么正则表达式来解析 .Net 中此页面上的图像 src?” -> “你应该跳过正则表达式并使用 HtmlAgilityPack”)。
        • 哦,当然,@jball 欢迎你用 PHP 编写跟踪器,哈哈 :)
        猜你喜欢
        • 2012-03-25
        • 2012-10-05
        • 2017-07-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-08-09
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多