通过Photoshop等图片处理工具将图片处理好,再将其上传到网站服务器上,是大部分Web应用上传图片的主要过程。一旦今后图片尺寸、样式需要修改时,又不得不重复上述过程。如果你一直在为改进这个过程,寻找更好的解决方案,那么云端图片处理工具Cloudinary或许能帮上你的忙。

Cloudinary是一款SaaS软件,为图片的全程管理提供了解决方案。它可以很容易地将图片上传到云端,并智能地在云端处理、转化图片,包括改变大小、裁剪、基于人脸检测的裁剪、圆角、格式转换等。这一切均不需借助任何复杂的图片处理软件,只需按规则改动图片URL就可在云端生成相应的图片。
Cloudinary也可以通过带有高级缓存功能的CDN发布所有图片,也可以自动抓取Facebook、Twitter中的图片,将其转换成与你网站设计相匹配的图片并进行载入。你可以在几秒中注册一个Cloudinary帐号,并可快速与你的Web应用进行整合。
案例分析
以处理Cloudinary服务器上的图片butterfly.jpg (http://res.cloudinary.com/demo/image/upload/butterfly.jpg)为例,你只需在upload/butterfly.jpg之间插入相应的代码即可获得对应效果的图片。
● 获得高为100px的缩略图,对应的URL:http://res.cloudinary.com/demo/image/upload/h_100,c_thumb/butterfly.jpg。

● 获得女士面部90px*90px的小图,此时需要用到Cloudinary的基于人脸检测的裁剪技术,对应的URL:http://res.cloudinary.com/demo/image/upload/w_90,h_90,c_thumb,g_face/butterfly.jpg。

● 在上图的基础上,获得圆角效果,只需再增加r_20参数即可,对应的URL地址:http://res.cloudinary.com/demo/image/upload/w_90,h_90,c_thumb,g_face,r_20/butterfly.jpg。

● 要想获得圆形边界的图片呢?把r_20改成r_max即可,对应的URL地址:http://res.cloudinary.com/demo/image/upload/w_90,h_90,c_thumb,g_face,r_max/butterfly.jpg。

以处理Facebook上的图片为例,通过下面的URL地址:http://res.cloudinary.com/demo/image/facebook/w_100,h_100,c_thumb,g_face,r_25/billclinton.png,可以动态返回如下样式图片。

在后台,该URL请求Cloudinanry访问Facebook的API,并下载符合尺寸要求的Bill Clinton的最新照片,同时利用人脸检测技术裁剪出一个完美的、圆角的人物头像缩略图,并对其进行缓存,以备以后的再次使用,最后通过CDN发布最终的图片。
所有人都可享有Cloudinary以下功能:
● 管理你在云上的所有资源;
● 无论大小,任何Web应用都可以享有流行的Web发布平台;
● 完全摆脱了本地网络资源管理的繁琐过程;取而代之,利用高级功能,获得我们一直渴望的最佳体验。

关键的特性
(1)Cloudinary提供了完善的API和管理能力,很容易与任何Web应用整合。
(2)Cloudinary提供了HTTP和基于URL的API,所有Web开发者、任何网站架构站点均可使用。
(3)为了进一步简化整合过程,Cloudinary还提供有:
● Ruby GEM,用于整合基于Ruby on Rails架构的Web应用;
● 针对JavaScript integration的jQuery库;
● Beta版本的Python/Django库;
● Beta版本的PHP客户端库等。