素材动态格式及大小转换
概述
此文档适用于:素材检索和查询素材详情接口的返回参数transformPreviewUrl
使用此功能,可根据前端请求的参数,实时动态生成素材进行转换(如格式转换、缩放、裁剪)后的衍生变体文件。
💡
说明
1.前置依赖:需要联系特赞开通此功能权限,方可使用,否则返回的链接会是该素材的原始预览链接
2.我们的提供的动态转换一般不是基于原始文件,而是基于特赞生成的大约3M的预览文件。 当我们无法提供预览文件时,会提供兜底的原始文件链接。
例如,原文件是PSD,特赞会生成JPG的预览图,原文件是MOV,特赞会生成MP4格式的预览视频——此时是基于JPG预览图和MP4预览视频进行的格式或大小转换,实时动态生成的变体链接。此时若PSD超过2G,我们无法提供预览图时,则会返回PSD文件链接
目录
图像处理
使用限制
使用图像处理功能时有如下限制:
-
原图限制(指原预览图)
- 图片格式只支持PNG、WebP、BMP、GIF、TIFF、JPEG(.jpg|.jpeg)、JPEG 2000(.jp2)。
- 原图大小不能超过10 MB。
- 原图的宽×高不能超过16,777,216 px。
说明 若图片为GIF格式时,GIF图片的原图宽×高为所有帧相加之和。
-
处理后的图片限制
- 格式转换、质量转换
- 图片的宽×高不能超过16,777,216 px。
- 转WebP格式时,图片的宽×高不能超过16,777,216 px,且宽和高单边均不能超过16,384 px。如果原图为动图,转WebP格式时会被转为静态图片。
- 裁剪、缩放
- 图片的长边不能超过2560px。
- 格式转换、质量转换
图片格式转换
参数说明
操作名称:format
下表列出了支持转换的图片格式。
支持转换的图片格式 | 说明 |
---|---|
JPEG | 将原图保存为JPG或JPEG格式。 |
PNG | 将原图保存为PNG格式。 |
WEBP | 将原图保存为WEBP格式。 |
BMP | 将原图保存为BMP格式。 |
GIF | 将原图保存为GIF格式。说明 GIF有动图效果,若转换为其他图片格式,则只保留静图效果。 |
JPEG 2000 | 将原图保存为JPEG 2000格式,图片后缀为JP2。 |
操作示例
demo.jpg?image_process=format,png
图片缩放
参数说明
操作名称:resize
参数说明见下表。
说明 当任意参数值为负数时,将不对图片进行任何处理直接返回原图。
参数 | 说明 | 取值范围 |
---|---|---|
w | 指定目标缩放图的宽度。 | 不能超过2560 |
h | 指定目标缩放图的高度。 | 不能超过2560 |
l | 指定目标缩放图的最长边。 | 不能超过2560 |
s | 指定目标缩放图的最短边。 | 不能超过2560 |
fw、fh | 指定目标缩放图的宽高。 | 不能超过2560 |
p | 按原图长宽比例进行缩放。 | [0,100] |
操作示例
下表列出了图片缩放方式和示例。
图片缩放方式 | 说明 | 示例 |
---|---|---|
原图比例缩放 | 按原图长宽比例进行缩放。 | demo.jpg?image_process=resize,p_80 |
按条件缩放 | 当图片大于等于1024000字节时,进行缩放,单位为Byte。说明 这里的1024000为举例所用的示例值,实际取值需根据您的实际情况设置。 | demo.jpg?image_process=resize,l_200/threshold,1024000 |
按长边固定自适应等比缩放 | 长边固定长度,短边自适应缩放。 | demo.jpg?image_process=resize,l_200 |
按短边固定自适应等比缩放 | 短边固定长度,长边自适应缩放。 | demo.jpg?image_process=resize,s_200 |
按宽固定自适应等比缩放 | 固定宽度,长度自适应。 | demo.jpg?image_process=resize,w_200 |
按高固定自适应等比缩放 | 固定高度,宽边自适应。 | demo.jpg?image_process=resize,h_200 |
指定宽高缩放 | 指定缩放的宽高。 | demo.jpg?image_process=resize,fw_200,fh_200 |
图片裁剪
参数说明
操作名称:crop
参数说明见下表。
说明 当任意参数值为负数时,将不对图片进行任何处理直接返回原图。
参数 | 描述 | 取值范围 |
---|---|---|
w | 指定裁剪宽度。 | 不能超过2560 |
h | 指定裁剪高度。 | 不能超过2560 |
x | 指定裁剪起点横坐标(默认左上角为原点)。 | 不能超过2560 |
y | 指定裁剪起点纵坐标(默认左上角为原点)。 | 不能超过2560 |
g | 设置裁剪的原点位置。原点按照九宫格的形式分布,一共有九个位置可以设置,为每个九宫格的左上角顶点。 |
|
裁剪原点位置示意图。
操作示例
下表列出了图片裁剪方式和示例。
图片裁剪方式 | 说明 | 示例 |
---|---|---|
圆切 | 指定圆半径进行剪切,半径不超过原图的一半。 |
|
九宫格切 | 设置原点位置,原点按九宫格分布。 |
|
指定X、Y轴剪切 | 按指定x、y、宽和高裁剪,以x和y为起点,裁剪宽×高大小的图片内容。 |
|
图片居中剪切 | 从图片居中部分裁剪指定宽和高的图片内容。 |
|
图片质量转换
参数说明
操作名称:quality
参数 | 说明 | 取值范围 |
---|---|---|
Q | 图片的绝对质量。按绝对质量进行转换,转换成指定大小的质量,如果当前质量小于待转换的质量,则不转换。 |
0<Q<100,且Q必须是5的倍数,不在质量值范围内的其他值均不支持。
说明 质量值越大图片质量越高,图片越清晰;质量值越小图片质量越低,图片越不清晰,推荐设置为95。
|
q | 图片的相对质量。按相对质量进行转换,根据当前图片的质量乘以待转换系数,得到最终要转换的图片质量。 |
0<q<100,且q必须是5的倍数,不在质量值范围内的其他值均不支持。
说明 质量值越大图片质量越高,图片越清晰;质量值越小图片质量越低,图片越不清晰,推荐设置为95。
|
- 绝对质量转换:
demo.jpg?image_process=quality,Q_90
,如果当前质量是80,转换后质量仍为80。 - 相对质量转换:
demo.jpg?image_process=quality,q_90
,如果当前质量是80,转换后质量为72。
音视频试看
使用限制
- 格式限制
- 视频仅支持MP4 (视频的meta信息必须在文件头部,不支持meta信息在尾部的视频。)
- 音频仅支持MP3
视频试看
参数说明
操作名称:start、end
start、end参数表示时间,单位是秒。 即返回从 start 至 end 秒的视频文件。
表示定位到参数所表示时间的前一个关键帧(如果当前值不是关键帧所在位置)
说明 当start参数超出视频时长时,会返回400错误; 当end参数超出视频时长时,会返回完整视频。
操作示例
说明 | 举例 |
---|---|
从第10秒开始返回视频 | video.mp4?start=10 |
返回视频至20秒 | video.mp4?end=20 |
返回从第10秒-第20秒的视频 | video.mp4?start=10&end=20 |
音频试听
参数说明
操作名称:end
说明 音频试听暂时只支持end参数,即返回从 0 至 end 秒的音频文件。
其他使用说明请参考视频试看
自动下载
预览链接默认为在线打开(如果浏览器支持该文件格式),转为下载链接后,在浏览器中访问会发起下载请求。
参数说明
操作名称:filename
参数说明
filename 指定下载保存时的文件名称。
操作示例
将demo.mp4下载保存为demo1.mp4:demo.mp4?filename=demo1.mp4