圖片處理介紹:
使用:
原始圖片上傳到OSS后,可以通過(guò)簡(jiǎn)單的RESTful接口,在任何時(shí)間、任何地點(diǎn)、任何互聯(lián)網(wǎng)設(shè)備上對(duì)圖片進(jìn)行處理。
(接口正常上傳圖片 返回oss圖片之后 再對(duì)圖片進(jìn)行處理)
>>>接口上傳oss照片
1.獲取oss相關(guān)參數(shù)
/api/admin/vendor/uploadToken?path=images/

2.上傳圖片file到oss
http://zhuoyou-shop-test.oss-cn-hangzhou.aliyuncs.com/

3.拼接圖片地址:
圖片地址 =? host(接口1返回的)+dir(接口1返回的)+file.name
eg:......
https://zhuoyou-shop-test.oss-cn-hangzhou.aliyuncs.com/images/4.jpg
>>>>>> 圖片處理 使用方式有好幾種:
>匿名訪問(wèn)(通過(guò)添加處理參數(shù)對(duì)圖片進(jìn)行處理)
通過(guò)如下格式的三級(jí)域名匿名訪問(wèn)處理后的圖片:
http://.......?x-oss-process=image/<yourAction>,<yourParamValue>
>授權(quán)訪問(wèn)?eg:
let OSS =require('ali-oss');
let client =new OSS({accessKeyId:'',accessKeySecret:'',bucket:'',endpoint:''});
let signUrl = client.signatureUrl('example.jpg', {expires:600,'process':'image/resize,w_300'});
過(guò)期時(shí)間10分鐘, 圖片處理式樣"image/resize,w_300"
>SDK訪問(wèn)?eg:
let OSS =require('ali-oss');
.......
?縮放?client.signatureUrl('example.jpg', {expires:3600,process:'image/resize,m_fixed,w_100,h_100'})?
圖片處理功能也很多:?
獲取圖片信息,?圖片格式轉(zhuǎn)換,?圖片縮放,?圖片裁剪,?圖片旋轉(zhuǎn),?圖片效果,?圖片水印,?自定義圖片處理樣式,?級(jí)聯(lián)處理
圖片操作詳細(xì)信息
以下都用的是第一種方式 匿名訪問(wèn)方式處理圖片:http://.......?x-oss-process=image/xx,xx
有各個(gè)圖片操作指南地址
1.圖片水印介紹
水印參數(shù):watermark
t可選參數(shù),指定水印的透明度。
g可選參數(shù),指定水印在圖片中的位置,[nw,north,ne,west,center,east,sw,south,se]
x可選參數(shù),指定水印的水平邊距, 即距離圖片邊緣的水平距離。水印位置是左上、左中、左下、右上、右中、右下
y可選參數(shù),指定水印的垂直邊距,即距離圖片邊緣的垂直距離, 水印位置是左上、中上、右上、左下、中下、右下
voffset可選參數(shù),指定水印的中線垂直偏移。水印位置在左中、中部、右中時(shí),可以指定水印位置根據(jù)中線往上或者往下偏移

圖片水印參數(shù):image
文字水印參數(shù):
text必選參數(shù),指定文字水印的文字內(nèi)容。參數(shù)值為文字內(nèi)容進(jìn)行Base64編碼后的字符串。
(文字水印內(nèi)容必須是通過(guò)以下方法進(jìn)行Base64編碼后的字符串? 最大長(zhǎng)度為64個(gè)字符(即支持漢字最多20個(gè)左右)。)
type可選參數(shù),指定文字水印的文字類型。
默認(rèn)值:wqy-zenhei( 編碼后的值:d3F5LXplbmhlaQ)
color可選參數(shù),指定文字水印的文字顏色。默認(rèn)值:000000(黑色)
size可選參數(shù),指定文字水印的文字大?。▎挝粸閜x)。(0,1000]
shadow可選參數(shù),指定文字水印的陰影透明度。[0,100]
rotate可選參數(shù),指定文字順時(shí)針旋轉(zhuǎn)角度。[0,360]
fill可選參數(shù),指定是否將水印鋪滿原圖。0、1
1:表示將水印鋪滿原圖。
0:表示不將水印鋪滿全圖。
~水印圖片目前僅支持PNG、JPG和WebP格式。
加水印圖片后綴示例eg:
?x-oss-process=image/watermark,rotate_30,fill_1,size_20,color_B0C4DE,shadow_50,t_100,g_center,text_SGVsbG8g5Zu-54mH5pyN5YqhIQ
rotate_30:旋轉(zhuǎn)角度
fill:水印是鋪滿 還是單獨(dú)一個(gè)水印
size:水印文字大小;
color:水印文字顏色
shadow:水印文字陰影
t:水印透明度
g:水印位置
text:水印文字 文字要轉(zhuǎn)換為base64格式
測(cè)試圖片地址:

2.壓縮圖片介紹
介紹地址
https://help.aliyun.com/document_detail/44705.html?spm=a2c4g.11186623.6.1665.58002e93foKl5K
參數(shù)quality
q決定圖片的相對(duì)質(zhì)量,對(duì)原圖按照q%進(jìn)行質(zhì)量壓縮。例如,如果原圖質(zhì)量為100%,添加quality,q_90參數(shù)會(huì)得到質(zhì)量為90%的圖片。如果原圖質(zhì)量為80%,添加quality,q_90參數(shù)會(huì)得到質(zhì)量72%的圖片。
只有為JPG格式的原圖添加該參數(shù),才可以決定圖片的相對(duì)質(zhì)量。如果原圖為WebP格式,添加該參數(shù)相當(dāng)于指定了原圖絕對(duì)質(zhì)量,即與參數(shù)Q的作用相同。
Q決定圖片的絕對(duì)質(zhì)量,將原圖質(zhì)量壓縮至Q%,如果原圖質(zhì)量小于指定參數(shù)值,則按照原圖質(zhì)量重新進(jìn)行壓縮。
例如,如果原圖質(zhì)量是95%,添加quality,Q_90參數(shù)會(huì)得到質(zhì)量90%的圖片。如果原圖質(zhì)量是80%,添加quality,Q_90只能得到質(zhì)量80%的圖片。
?該參數(shù)只能對(duì)保存格式為JPG、WebP的圖片使用,對(duì)其他格式的圖片無(wú)效果。 如果同時(shí)指定了q和Q,會(huì)按照Q的值進(jìn)行處理。
eg:
?x-oss-process=image/quality,q_80
quality,q_80表示把圖片壓縮至80%
》在質(zhì)量變換時(shí)不指定Q或者q參數(shù),可能會(huì)導(dǎo)致圖片占用空間變大。
》由于 僅支持有損壓縮的圖片格式:JPG和WebP? 不支持png? ?所以要先將圖片轉(zhuǎn)換為jpg格式 在壓縮 因?yàn)閴嚎s只能是jpg格式
圖片格式轉(zhuǎn)換
介紹地址:
https://help.aliyun.com/document_detail/44703.html?spm=a2c4g.11186623.6.1663.53c1e849R2jCmX
參數(shù):format
jpg將原圖保存成 jpg 格式,如果原圖是 png、webp、bmp 存在透明通道,默認(rèn)會(huì)把透明填充成白色。
png將原圖保存成 png 格式。
webp將原圖保存成 webp 格式。
bmp將原圖保存成 bmp 格式。
gif將 gif 格式保存成 gif 格式,非 gif 格式是按原圖格式保存。
tiff將原圖保存成 tiff 格式。
(將圖片轉(zhuǎn)換成對(duì)應(yīng)格式,包括 jpg、png、bmp、webp、gif、tiff。 不填格式,則默認(rèn)按原圖格式返回。
對(duì)于普通縮略請(qǐng)求, 建議 format 參數(shù)放到處理參數(shù)串最后,例如:image/resize,w_100/format,jpg。
對(duì)于縮略+水印的請(qǐng)求,建議 format 參數(shù)跟縮略參數(shù)放在一起,例如:image/reisze,w_100/format,jpg/watermark,...。
保存成 jpg 格式時(shí),默認(rèn)是保存成標(biāo)準(zhǔn)型的 jpg (Baseline JPEG), 如果想指定是漸進(jìn)式 JPEG (Progressive JPEG), 可以指定參數(shù) interlace,)
eg:
?x-oss-process=image/format,jpg
表示將圖片格式轉(zhuǎn)換為jpg圖片
所以壓縮圖片最終的后綴
?x-oss-process=image/format,jpg/quality,q_80
比如:https://zhuoyou-shop-test.oss-cn-hangzhou.aliyuncs.com/images/v2-1665b647c52900b714f2f402fdea0262_r.jpg?x-oss-process=image/format,jpg/quality,q_70


數(shù)據(jù)操作 不僅可以操作圖片 還可以操作視頻
介紹地址:
https://help.aliyun.com/document_detail/99372.html?spm=a2c4g.11186623.6.1644.2ce22e935lduWO
video視頻截幀
https://help.aliyun.com/document_detail/64555.html?spm=a2c4g.11186623.2.17.120251b0x3pgs4#concept-kz1-cwc-wdb
操作分類:video
操作名稱:snapshot
t指定截圖時(shí)間。[0,視頻時(shí)長(zhǎng)]? 單位:ms
w指定截圖寬度,如果指定為0,則自動(dòng)計(jì)算。[0,視頻寬度]? 單位:像素(px)
h指定截圖高度,如果指定為0,則自動(dòng)計(jì)算;如果w和h都為0,則輸出為原視頻寬高。[0,視頻高度]? 單位:像素(px)
m指定截圖模式,不指定則為默認(rèn)模式,根據(jù)時(shí)間精確截圖。如果指定為fast,則截取該時(shí)間點(diǎn)之前的最近的一個(gè)關(guān)鍵幀。比如:fast
f指定輸出圖片的格式。比如:jpg、png
ar指定是否根據(jù)視頻信息自動(dòng)旋轉(zhuǎn)圖片。如果指定為auto,則會(huì)在截圖生成之后根據(jù)視頻旋轉(zhuǎn)信息進(jìn)行自動(dòng)旋轉(zhuǎn)。比如:auto
eg:
使用fast模式截取視頻7s處的內(nèi)容,輸出為JPG格式的圖片,寬度為800,高度為600。
?x-oss-process=video/snapshot,t_7000,f_jpg,w_800,h_600,m_fast
使用精確時(shí)間模式截取視頻50s處的內(nèi)容,輸出為JPG格式的圖片,寬度為800,高度為600。
?x-oss-process=video/snapshot,t_50000,f_jpg,w_800,h_600
比如:http://hr-culture.oss-cn-hangzhou.aliyuncs.com/videos/4.mp4?x-oss-process=video/snapshot,t_2000,f_jpg,m_fast
