12

我正在寻找一个免费的、最好是开源的 http图像处理服务器。即我会向它发送这样的请求:

http://myimageserver/rotate?url=http%3A%2F%2Fstackoverflow.com%2FContent%2FImg%2Fstackoverflow-logo-250.png&angle=90

它会返回旋转的图像。想要的功能:

  • 服务器端缓存
  • 几种操作/效果(如缩放、水印等)。多多益善。
  • POST 支持提供图像(而不是服务器获取它)。
  • 不同的输出格式(PNG、JPEG 等)。
  • 批量操作

它会是这样的,但免费且 SOAPy 更少。有这样的事情还是我要求太多了?

4

7 回答 7

7

ImageResizing.Net 库既是.NET 库又是 IIS 模块。它是图像服务器或图像库,无论您喜欢哪个。

它是开源的,在MIT 风格的许可下,并受插件支持。

它具有出色的性能,并支持 3 种管道:GDI+、Windows Imaging Components 和 FreeImage。WIC 是最快的,可以在 15ms 内完成一些操作。它支持磁盘缓存(最多可存储 100 万个文件),并且与 CDN 兼容(Amazon CloudFront 是理想的选择)。

它具有非常人性化的 URL 语法。前任。image.jpg?width=100&height=100&mode=crop.

它支持调整大小、裁剪、填充、旋转、PNG/GIF/JPG 输出、边框、水印、远程 URL、Amazon S3、MS SQL、Amazon CloudFront、批处理操作、图像过滤器、磁盘缓存和许多其他很酷的东西,比如缝雕。

它不支持图像的 POST 交付,但使用插件很容易做到这一点。而且您通常不想存储通过 POST 传递的图像,而不是仅仅用结果回复 POST 命令吗?

[披露:我是 ImageResizer 的作者]

于 2012-01-09T21:20:20.287 回答
4

Apache::ImageMagick,你安装它——还有 Apache 和 mod_perl。这是标准设置,检查文档,还有其他选择。这可能是交钥匙。

样本配置:

<Location /img>
PerlFixupHandler Apache::ImageMagick
PerlSetVar AIMCacheDir /tmp/your/cache/directory
</Location>

您的请求可能如下所示: http://domain/img/test.gif/Frame?color=red

更多文档在这里

于 2008-09-29T00:37:17.917 回答
2

您可以使用LibGDImageMagick相当轻松地构建这样的服务。它们都有许多语言绑定。

于 2008-09-28T23:38:27.603 回答
2

虽然不是开箱即用的解决方案,但请查看ImageMagick。它有一个 perl接口,所以将它与一些相当简单的 cgi 脚本或 mod_perl 结合起来,它应该可以解决问题。

于 2008-09-28T23:38:35.967 回答
2

您可以使用 Google App Engine 来实现这一点——它们提供图像处理例程,并将在一定范围内免费托管。

这里有一些人们已经在做这样的事情的例子

http://appgallery.appspot.com/results?q=image

于 2008-09-29T00:07:44.413 回答
1

我找到了这个产品,它似乎符合我的要求

于 2009-05-18T17:14:53.310 回答
1

尝试使用 OpenResty 和 Lua 的 Nginx 图像处理服务器。它使用 ImageMagick C API。Openresty 带有LuaJIT。它在速度方面具有惊人的表现。查看 LuaJIT 和 Openresty 的一些基准测试。

于 2017-04-06T14:22:20.103 回答