开发者社区> 问答> 正文

老版图片服务手册 -基本概念



图片服务基本概念



Object(对象、文件)


在IMG中,用户操作图片的基本数据单元是Object。即OSS对应的Object,单个Object(即每张图片)允许的最大大小是20MB。
Object 命名规范:

  • 使用 UTF-8 编码。
  • 长度必须在 1-1023 字节之间。
  • 不能以“/”或者“\”字符开头。


Channel (频道)


Channel 是IMG上的命名空间,也是计费、权限控制、日志记录等高级功能的管理实体。IMG名称在整个图片处理服务中具有全局唯一性,且不能修改。一个用户最多可创建10个Channel,但每个Channel中存放的object的数量没有限制。[backcolor=transparent]目前Channel跟OSS的Bucket相对应,即用户只能创建与自己在OSS上Bucket同名的Channel。
Channel命名规范:
  • 只能包括小写字母,数字,短横线(-)。
  • 必须以小写字母或者数字开头和结尾。
  • 长度必须在 3-63 字节之间。


Style(样式)


图片处理服务提供用户将图片的处理操作和参数保存成一个别名,即样式。一系列操作,利用样式功能后,只需要用一个很短的URL就能实现相同的效果。
  • 一个Channel下面有多个样式,目前一个Channel允许最多有50个样式。
  • 样式适应于Channel 下面的object图像变化操作。假如在A Channel下面有样式,名称为abc, 样式内容是100w.jpg(按宽缩略成100,保存成jpg格式)那么A Channel下面所有的object都能使用样式abc,实现缩略成 100w.jpg的效果。
  • 样式的作用范围只在一个Channel下,即A Channel不能使用B Channel的样式。

Style命名规范:
  • 长度为1-63个字符。
  • 只能包含数字、大小写字母、下划线(_)、短横线(-)以及小数点(.)。

样式访问示例

处理字符串


图片服务定义了处理字符串,包含两个部分转换参数、转换格式:
  • 转换参数由一个或多个键值对(以”_”连接)组成,“值”在前“键”在后,“值”为数字类型,“键”为一位字母。
  • 转换格式是一种特殊的转换参数,用户指定转换格式,图片服务对原图处理并返回用户期望的图片文件格式。(支持格式是: jpg,jpeg,webp,png,bmp)。


分隔符


图片处理服务使用通过URL来访问处理的图片。 所以需要分隔符来区分一些关键字段。不要在使用的图片文件名称中包含图片处理服务设定的分隔符。不然会导致解析出错的问题。
分隔符名称分隔符含义
处理分隔符@区分Object名称跟处理字符串。
样式分隔符@!区分Object跟样式内容,详见样式
管道分隔符|区分多种操作,详见管道


数据中心及访问域名


图片服务的数据中心和OSS的数据中心相对应。用户在OSS的某个数据中心上创建一个Bucket,然后选择开通图片服务,那么对应的Channel也属于该数据中心。开通的数据中心及域名见 访问域名

示例


下面以一个例子来说明上面提到的概念
  1. [backcolor=transparent]http[backcolor=transparent]:[backcolor=transparent]//image-demo.img-cn-hangzhou.aliyuncs.com/example.jpg@100w_100h.jpg
  2. [backcolor=transparent]以图片访问的[backcolor=transparent]URL[backcolor=transparent]为例子
  3. [backcolor=transparent]image[backcolor=transparent]-[backcolor=transparent]demo[backcolor=transparent]:用户的频道的名字,即[backcolor=transparent]Channel
  4. [backcolor=transparent]img[backcolor=transparent]-[backcolor=transparent]cn[backcolor=transparent]-[backcolor=transparent]hangzhou[backcolor=transparent].[backcolor=transparent]aliyuncs[backcolor=transparent].[backcolor=transparent]com[backcolor=transparent]:图片杭州地区访问域名,即[backcolor=transparent]Endpoint
  5. [backcolor=transparent]example[backcolor=transparent].[backcolor=transparent]jpg[backcolor=transparent]:待处理的图片的原图名字,即[backcolor=transparent]Object
  6. [backcolor=transparent]@:处理分隔符
  7. [backcolor=transparent]100w[backcolor=transparent]_100h[backcolor=transparent].[backcolor=transparent]jpg[backcolor=transparent]:处理字符串
  8. [backcolor=transparent]100w[backcolor=transparent]_100h[backcolor=transparent]:将原图进行处理的参数,即转换参数
  9. [backcolor=transparent].[backcolor=transparent]jpg[backcolor=transparent]:将原图根据参数处理后的保持的格式,即转换格式


限制


  • 图片处理支持的格式有:jpg、png、bmp、gif、webp、tiff。

  • 指定缩略图宽度或者高度时,在等比缩放的情况下,都会默认进行单边的缩放。在固定宽高的模式下,会默认在宽高一样的情况下进行缩放。

  • 对缩略后的图片大小有限制,目标缩略图的宽与高的乘积不能超过4096 x 4096, 且单边的长度不能超过4096 x 4。

  • 调用resize,默认不允许放大。如果请求图片比原图大,那么返回的仍然是原图。如果想得到放大的图片,需要增加参数调用limit,0。

  • 管道目前限制在4个。

其他限制可以参考文档其他参数的详细描述。

展开
收起
青衫无名 2017-10-23 10:58:54 1679 0
0 条回答
写回答
取消 提交回答
问答排行榜
最热
最新

相关电子书

更多
函数计算最佳实践:快速开发一个分布式 Puppeteer 网页截图服务 立即下载
QQ移送页面框架优化实践 立即下载
QQ移动页面框架优化实践 立即下载