picfitGo 编写的图像调整服务器
picfit 是一个用 Go 编写的图像调整服务器。它将作为你的存储引擎的代理,并且最好是在 HTTP 缓存系统(如varnish)后面提供服务;支持多个存储后端和多个键/值存储。
picfit 背后的想法来自于将图像处理(调整大小、缩略图等)输出到一个独立的网络服务,无论使用何种存储引擎(s3、文件系统等)都能管理文件。
当你在处理按需调整大小时,你必须将生成的图像的键存储到一个数据存储器中,以避免生成相同的图像两次。通过一个独特的接口,picfit 允许你使用或实现你喜欢的数据存储。
在 ulule.com,picfit 允许删除大量用于头像和项目图像处理的代码,并避免同步调用以检索生成的图像,这可能会对你的应用程序性能产生影响。
示例:
http://www.google.fr/images/srpr/logo11w.png (538x190)
- 将图像调整为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
评论