做了五、六年电子商务开发,电商的商品图片非常的庞大,比如商品的预览图片,最少起码有三种格式,40x40,160x160,250x250,所以很多时候需要对商品图片进行处理,总结下电子商务的图片的储存。
项目需要安装 imagemagick,地址:http://www.imagemagick.org/ 有着非常强大的图片处理,动态生成图片,压缩图片,等比压缩
JAVA开发需要 用maven依赖
org.im4java
im4java
1.2.0
1、如果有足够的服务器空间,可以使用预生成需要的图片格式,这种方案就是需要比较大的硬盘存储,一般实现可以用java+imagemagic。
创建一个接口类
/**
*
* 对上传的图片进行处理,业务规则是:
* 1、对上传的图片进行正方形处理,也就是说所有的图片上传后以正方形存储;
* 2、正方形处理的规则就是以800的长宽为标准,如果没有到达800的图片则按照最大的一边做为标准
* 如果最大边到达或者超过800那么就按800标准
*
*
*
* @param srcImage
*/
void handleImage(String srcImage);
/**
*
* 主要是打水印,业务规则 handleImage(..)
一样,只不过该方法默认打水印
*
*
* @param srcImage
* @param maxWidth
* @param watermark
*/
void watermarkImage(String srcImage, boolean watermark);
/**
*
* 对图片进行压缩,主要使用场景是上传商品详细页面
*
*
* @param srcImage
*/
void compressionImage(String srcImage, int width);
实现类&#