picfitGo 编写的图像调整服务器

联合创作 · 2023-09-29 15:44

picfit 是一个用 Go 编写的图像调整服务器。它将作为你的存储引擎的代理,并且最好是在 HTTP 缓存系统(如varnish)后面提供服务;支持多个存储后端和多个键/值存储。

picfit 背后的想法来自于将图像处理(调整大小、缩略图等)输出到一个独立的网络服务,无论使用何种存储引擎(s3、文件系统等)都能管理文件。

当你在处理按需调整大小时,你必须将生成的图像的键存储到一个数据存储器中,以避免生成相同的图像两次。通过一个独特的接口,picfit 允许你使用或实现你喜欢的数据存储。

在 ulule.com,picfit 允许删除大量用于头像和项目图像处理的代码,并避免同步调用以检索生成的图像,这可能会对你的应用程序性能产生影响。

示例:

http://www.google.fr/images/srpr/logo11w.png (538x190)
  1. 将图像调整为200 宽度并计算高度比例

http://localhost:8080/display?url=http://www.google.fr/images/srpr/logo11w.png&w=200&h=0&op=resize

2. 将图像调整为200 宽100 高

http://localhost:8080/display?url=http://www.google.fr/images/srpr/logo11w.png&w=200&h=100&op=resize

3. 将图像缩略图为300 宽50 高,它将从它的中心执行裁剪操作

http://localhost:8080/display?url=http://www.google.fr/images/srpr/logo11w.png&w=300&h=50&op=thumbnail

4.将图像调整为600宽并计算比例以找到完美的高度,图像会降级

http://localhost:8080/display?url=http://www.google.fr/images/srpr/logo11w.png&w=600&h=0&op=resize

如果你希望 picfit 不将图像放大到特定尺寸(以防你的尺寸大于原始图像尺寸),则可以禁用放大行为。

http://localhost:8080/display?url=http://www.google.fr/images/srpr/logo11w.png&w=600&h=0&op=resize&upscale=0
浏览 16
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报