图片处理服务是一个基础服务,以接口的方式提供服务,可对图片进行处理。
图片处理是指:缩略图、裁剪、旋转、加文字水印、加图片水印等等操作。
在线实时图片处理是指:当用户第一次访问一张图片的小图时,可从原图实时生成一张小图,返回给用户。图片URL中带有图片处理规则。
图片处理引擎:java图片处理引擎、ImageMagick图片处理引擎
|
com.sicheng.upload.thumbnail.ImageProcess 是图片处理接口
/** * Copyright (C) 2016-Now 思程科技 All rights reserved. * 思程科技(北京)有限公司对本内容拥有著作权,禁止外泄,禁止未经授权使用。 */ package com.sicheng.upload.thumbnail; import java.io.InputStream; /** * <p> * 标题: 图片处理接口 * </p> * <p> * 描述:生成缩略图、裁剪、取图片格式、取图片宽度 * </p> * <p> * 公司: 思程科技 www.sicheng.net * </p> * * @author zhaolei * @date 2017年9月13日 下午3:07:03 */ public interface ImageProcess { /** * 生成缩略图,保持图片原有长宽比例 * * @param inputStream * @param width * 宽,像素 * @param height * 高,像素 * @param quality * 清晰度,1-100 * @param format * 文件后缀 * @return */ public InputStream resize(InputStream inputStream, int width, int height, int quality, String format); /** * 按"最小边"生成指定宽与高的缩略图,由于图片长宽比不同造成的"超出",将切掉 * * @param inputStream * @param width * 宽,像素 * @param height * 高,像素 * @param quality * 清晰度,1-100 * @param format * 文件后缀 * @return */ public InputStream resizeAndCut(InputStream inputStream, int width, int height, int quality, String format); /** * 取得图片信息 (宽、高、图片类型) * 支持判断JPEG, GIF, PNG, BMP and TIFF * * @param fileContent * 文件内容字节数组 * @return ImageInfo */ public ImageInfo getImageInfo(InputStream inputStream); /** * 取得图片类型 * 支持判断JPEG, GIF, PNG, BMP and TIFF * 注意: * 1、图片类型使用大写字母描述。 * 2、jpg格式使用JPEG来表示。 * * @param inputStream * @return 大写的文件类型 */ public String getFormat(InputStream inputStream); /** * 取得图片信息 (宽、高) * @param inputStream * @return */ public ImageInfo getImageWH(InputStream inputStream); }