版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、對象存儲 OSS圖片服務手冊對象存儲 OSS/圖片服務手冊 PAGE 33圖片服務手冊圖片服務介紹阿里云OSS圖片處理服務(Image Service,簡稱 IMG) ,是阿里云OSS對外提供的海量,安全,低成本高可靠的圖片處理服務。用戶將原始圖片上傳保存在OSS上,通過簡單的 RESTful 接口,在任何時間、任何地點、任何互聯(lián)網設備上對圖片進行處理。圖片處理服務提供圖片處理接口,圖片上傳請使用OSS上傳接口?;贗MG,用戶可以搭建出跟圖片相關的服務。圖片服務基礎功能圖片服務提供以下功能:獲取圖片信息圖片格式轉換圖片縮放、裁剪、旋轉圖片添加圖片、文字、圖文混合水印自定義圖片處理樣式通過管道
2、順序調用多種圖片處理功能圖片服務(IMG)與對象存儲(OSS)的關系IMG不上傳圖片,IMG處理的圖片是OSS用戶上傳到Bucket里的Object。也就是說用戶可以通過OSS和IMG都可以訪問同一張圖片。IMG只處理來自于OSS的圖片。IMG和OSS有同樣的區(qū)域,不同的訪問域名。注意Bucket和Object見OSS 基本概念IMG的圖片上傳請參考圖片上傳IMG的訪問域名請參考圖片訪問域名OSS的訪問域名請參考OSS訪問域名圖片服務基本概念Object(對象、文件)在IMG中,用戶操作圖片的基本數據單元是Object。即OSS對應的Object, 單個 Object(即每張圖片)允許的最大大
3、小是20MB。Object 命名規(guī)范:使用 UTF-8 編碼。長度必須在 1-1023 字節(jié)之間。不能以/或者字符開頭。Channel (頻道)Channel 是 IMG上的命名空間,也是計費、權限控制、日志記錄等高級功能的管理實體。IMG名稱在整個圖片處理服務中具有全局唯一性,且不能修改。一個用戶最多可創(chuàng)建 10 個 Channel,但每個Channel中存放的object的數量沒有限制,存儲容量每個Channel最高支持2PB。目前Channel跟OSS的Bucket相對應,即用戶只能創(chuàng)建與自己在OSS上Bucket同名的Channel。Channel 命名規(guī)范:只能包括小寫字母,數字,短
4、橫線(-)。必須以小寫字母或者數字開頭和結尾。長度必須在 3-63 字節(jié)之間。Style(樣式)圖片處理服務提供用戶將圖片的處理操作和參數保存成一個別名,即樣式。一系列操作,利用樣式功能后,只 需要用一個很短的URL就能實現相同的效果。一個Channel下面有多個樣式,目前一個Channel允許最多有50個樣式。樣式適應于Channel 下面的object圖像變化操作。假如在A Channel下面有樣式,名稱為abc, 樣式內容是100w.jpg(按寬縮略成100,保存成jpg格式)那么A Channel下面所有的object都能使用樣式abc,實現縮略成 100w.jpg的效果。樣式的作用范
5、圍只在一個Channel下,即A Channel不能使用B Channel 的樣式。Style 命名規(guī)范:長度為1-63個字符。只能包含數字、大小寫字母、下劃線(_)、短橫線(-)以及小數點(.)樣式訪問示例處理字符串圖片服務定義了處理字符串,包含兩個部分轉換參數、轉換格式:轉換參數由一個或多個鍵值對(以_連接)組成,值在前鍵在后,值為數字類型,鍵為一位 字母。轉換格式是一種特殊的轉換參數,用戶指定轉換格式,圖片服務對原圖處理并返回用戶期望的圖片文 件格式。(支持格式是: jpg, jpeg, webp, png, bmp)。分隔符圖片處理服務使用通過URL來訪問處理的圖片。 所以需要分隔符來
6、區(qū)分一些關鍵字段。不要在使用的圖片文件名稱中包含圖片處理服務設定的分隔符。不然會導致解析出錯的問題。分隔符名稱分隔符含義處理分隔符區(qū)分Object名稱跟處理字符串樣式分隔符!區(qū)分Object跟樣式內容,詳見樣式管道分隔符|區(qū)分多種操作,詳見管道數據中心及訪問域名圖片服務的數據中心和OSS的數據中心相對應。用戶在OSS的某個數據中心上創(chuàng)建一個Bucket,然后選擇開通 圖片服務,那么對應的Channel也屬于該數據中心。開通的數據中心及域名見訪問域名示例 HYPERLINK /example.jpg%40100w_100h.jpg /example.jpg100w_100h.jpg 以圖片訪問的
7、URL為例子image-demo:用戶的頻道的名字,即Channel:圖片杭州地區(qū)訪問域名,即Endpoint example.jpg:待處理的圖片的原圖名字,即Object:處理分隔符100w_100h.jpg:處理字符串100w_100h:將原圖進行處理的參數,即轉換參數.jpg:將原圖根據參數處理后的保持的格式,即轉換格式下面以一個例子來說明上面提到的概念限制保存的最終格式只支持jpg, png, bmp, webp, gif文件的大小限制在20MB。對縮略后的圖片的大小有限制,目標縮略圖的寬與高的乘積不能超過4096 * 4096, 而且單邊的長度不能超過4096 * 4。管道目前限制
8、在4個。其他限制可以參考文檔其他參數的詳細描述。IMG 開通 Region 和 Endpoint 對照表目前,IMG 有以下幾個數據中心(Region)對公眾提供服務,各區(qū)域的訪問域名(Endpoint)設置如下:Region 中文名稱Region 英文名稱Endpoint杭州數據中心oss-cn-hangzhouimg-cn- 青島數據中心oss-cn-qingdaoimg-cn- 北京數據中心oss-cn-beijing深圳數據中心oss-cn-shenzhenimg-cn- 上海數據中心oss-cn-shanghaiimg-cn- 香港數據中心oss-cn-hongkongimg-cn-
9、 美國(加利福尼亞州)數據中心oss-us-west-1亞洲(新加坡)數據中心oss-ap-southeast-1img-ap-southeast- 1.上傳圖片需要的 OSS 訪問域名請參見OSS數據中心及訪問域名接入圖片服務圖片URL構成規(guī)則圖片服務都是使用標準的HTTP的GET請求來訪問的,所有的處理參數也是編碼在URL中的。直接獲取原圖用戶有兩種方式訪問圖片,分別是:三級域名自定義域名 HYPERLINK http:/channel/ http:/channel./object三級域名訪問的URL這里的endpoint指的是用戶圖片所在的Region的圖片服務的訪問域名,關于訪問域名請
10、參考訪問域名,object為用戶所關聯(lián)的channel上存儲的原圖片。自定義域名訪問的URL HYPERLINK http:/userdomain/object http:/userdomain/object另外一種方式是通過用戶綁定的圖片服務域名,也就是自定義域名來訪問,形式如下:其中userdomain為用戶開通圖片服務綁定的自定義域名,這個域名會關聯(lián)到一個channel,這里假設用戶自定 義域名userdomain已經CNAME到channel.endpoint這個三級域名上。 如何綁定圖片服務的自定義域名可以參考開通圖片服務。object為用戶所關聯(lián)channel上存儲的原圖片。通過處
11、理參數訪問原圖通過三級域名訪問 HYPERLINK mailto:/objectaction.format http:/channel./objectaction.formatchannel: 用 戶 的 IMG 頻 道 endpoint:用戶的Channel所在數據中心的訪問域名object: 用 戶 上 傳 在 OSS 上 的 圖 片 文 件 action: 用 戶 對 圖 片 做 的 處 理 format:用戶指定處理后的圖片格式通過用戶自定義域名訪問 HYPERLINK http:/userdomain/object%40action.format http:/userdomain/o
12、bjectaction.format如果用戶對原圖進行一定的處理然后返回,同樣有兩種形式,URL的格式如下:一個典型的URL的例子如下: HYPERLINK http:/bucket.endpoint/object%40100w_100h_90Q.jpg http:/bucket.endpoint/object100w_100h_90Q.jpg 三級域名 HYPERLINK http:/userdomain/object%40100w_100h_90Q.jpg http:/userdomain/object100w_100h_90Q.jpg 自定義域名其中的100w_100h_90Q為轉換的具
13、體action,jpg為轉換的format,合在一起的100w_100h_90Q.jpg稱為 轉換字符串,用來指定對于目標圖片的操作,通過指定轉換字符串,生成并返回另一張轉換處理后的圖片。一個典型的轉換字符串,如100w_100h_90Q.jpg,代表需要一張寬(w)100px、高(h)100px、絕對質 量(Q)90%、jpg格式的圖片。通過樣式訪問原圖 HYPERLINK http:/userdomain/object%40!style http:/userdomain/object!style為了簡化使用,用戶可以將特定的處理方法保存為樣式,這樣以后調用同樣的處理方法只需要指定某個樣式即
14、 可。使用樣式來進行圖片處理的URL形式如下:!是目前支持的樣式分隔符, style 是樣式的名稱 HYPERLINK /example.jpg%40!pipe1 如 :/example.jpg!pipe1 其中pipe1 是樣式名稱。關鍵詞順序無關轉換參數中鍵值對是循序無關的,即120w_120h_90Q和90Q_120w_120h都能取到想要的圖片,系統(tǒng)會對 參數按照本規(guī)范以下定義的順序重新排序后再處理。(由于參數的順序不同有時會表達不同的語義,如100w_100h_2x表達的是先縮放到100*100,再放大2倍,即得到200*200的圖片;而2x_100w_100h按 照字面順序理解是先
15、放大2倍再縮放到100*100,即得到100*100的圖片,為了避免這樣的理解誤差,同時簡 化處理方式,IMG會對參數按照文檔中出現的順序排序后處理。上例中的2x_100w_100h會被理解為100w_100h_2x,得到200*200的圖片。)覆蓋處理如果轉換參數中出現多個相同鍵,后面定義的覆蓋前面定義。如120w_120h_240w等同于120h_240w。沖突處理見每個參數中關于沖突的說明。長邊與短邊關于長邊和短邊的定義需要特別注意,它們表達的是在縮放中相對比例的長或短。長邊是指原尺寸與目標 尺 寸 的 比 值 大 的 那 條 邊 ; 短 邊 同 理 。 如 原 圖 400 * 200,
16、 縮 放 為 800 * 100,(400/800=0.5,200/100=2,0.5 2),所以在這個縮放中200那條是長邊,400是短邊。URL安全的Base64位編碼在圖片處理服務里會有很多參數需要變成Base64位編碼,參考RFC4648。注意這里的URL 安全Base64位編碼只是用在水印操作某些特定參數(文字水印的文字內容,文字顏色,文字字體及圖片水印的水印object)里,不要 將其用來簽名字符串(Signature)的內容。編碼的格式是:先將內容編碼成Base64結果;將結果中的加號+替換成中劃線-;將結果中的斜杠/替換成下劃線_;將結果中尾部的=號全部保留;以Python為例
17、子import base64 input=wqy-microheiprint(base64.urlsafe_b64encode(input)圖片快速開始基于控制臺快速開始:登錄OSS控制臺,開通OSS。創(chuàng)建一個Bucket。上傳和下載圖片。具體見控制臺快速開始文檔。快速了解圖片的上傳下載開始使用SDK之前,請先參考開發(fā)人員指南關于上傳下載文件的功能介紹。IMG是使用RESTful API來操作的,所有的請求都是標準的HTTP請求。圖片服務中的圖片的上傳等同于OSS的上傳。OSS提供了多種類型的上傳文件的方法,如使用單次PUT請求完成的簡單上傳、使用網頁表單直接上傳的表單上傳、以及用于大文件上傳
18、的分片上傳。圖片服務的下載可以通過瀏覽器等發(fā)送HTTP GET請求圖片的URL即可獲得圖片。快速體驗圖片服務的功能圖片服務功能體驗請參考 HYPERLINK /image/index.html /image/index.html用戶簽名驗證如果用戶需要不經過任何授權,通過瀏覽器即可匿名訪問圖片服務來處理圖片,需要在創(chuàng)建Bucket的時候將Bucket的權限設置為公共讀。創(chuàng)建Bucket控制臺:創(chuàng)建BucketSDK:Java SDK-Bucket中新建BucketAPI:Put Bucket設置Bucket權限控制臺: 創(chuàng)建Bucket權限設置SDK:Java SDK-Bucket中設置Buc
19、ket ACLAPI:Put BucketACL默認創(chuàng)建的Bucket權限是私有讀寫,Object默認繼承Bucket的權限。 如果用戶需要通過圖片服務訪問私有的Object,需要進行身份鑒權。圖片服務的用戶鑒權方式和OSS是一致的,有兩種鑒權方式:在Header中包含簽名在URL中包含簽名具體可參考在Header中包含簽名和在URL中包含簽名。在URL中包含簽名 HYPERLINK 對應的頻道名字為image-demo/ 假定用戶綁定的域名對應的頻道名字為image-demo,object名字為example.jpg,轉換字符串 為100w.jpg。Signature = base64(hm
20、ac-sha1(AccessKeySecret, VERB + n+ Content-MD5 + n+ Content-Type + n+ Expires + n+ CanonicalizedOSSHeaders+ CanonicalizedResource)首先需要計算Signature字段,計算方法如下:AccessKeySecret表示簽名所需的秘鑰VERB表示HTTP請求方法,例如PUT,GET,DELETE等Content-MD5表示請求內容數據的MD5值,對于圖片處理服務這里為空字符串Content-Type表示請求內容的類型,對于圖片處理服務這里為空字符串Expires表示授權給
21、用戶URL簽名過期時間CanonicalizedOSSHeaders表示HTTP中的ObjectMeta組合,對于圖片處理服務這里為空字符串CanonicalizedResource 表示用戶想要訪問的OSS資源,在圖片處理服務中這項的組成,格式為/channelname/object處理參數。構建CanonicalizedResource的方法如下:將CanonicalizedResource置成空字符串()放入要訪問的圖片服務資源:/channelname/object(無Object則不填)在結尾添加處理參數:處理參數,(無處理參數則不填)。此時 HYPERLINK mailto:/ch
22、annelname/object100w.jpg CanonicalizedResource例子如:/channelname/object100w.jpg。如果涉及樣式管理操作,那么將這些查詢字符串及其請求值按照字典序,以&分割,添加 到CanonicalizedResource中。此時的CanonicalizedResource例子:/channelname?style&styleName=YourStyleName注意:上例中的轉換字符串可以是簡單縮略,文字水印,圖片水印、管道和樣式(樣式的分隔符是!) HYPERLINK mailto:例子中的CanonicalizedResource為
23、/image-demo/example.jpg100w.jpg 例子中的CanonicalizedResource為/image-demo/example.jpg100w.jpg。這里需要注意的是,使用URL簽名中Expires和CanonicalizedResource不能為空。 HYPERLINK /example.jpg%40100w.jpg?OSSAccessKeyId=j4y55h3z88ihxxhlr9nhjjis&Expires=1392949804&S /example.jpg%40100w.jpg?OSSAccessKeyId=j4y55h3z88ihxxhlr9nhjjis
24、&Expires=1392949804&S ignature=IDBJ09e8Ow4GaPRM1yIf7plH/CI%3D最后生成在URL簽名,必須在參數后包含OSSAccessKeyId、Expires、Signature這三項,具體生成方法可以參 考OSS的API文檔中的在URL中包含簽名,上文的例子生成的URL簽名如下:在Header中包含簽名Authorization: OSS + AccessKeyId + : + Signature Signature = base64(hmac-sha1(AccessKeySecret,VERB + n+ Content-MD5 + n+ Con
25、tent-Type + n+ Date + n+ CanonicalizedOSSHeaders+ CanonicalizedResource)除了在URL中包含簽名之外,還可以在HTTP請求的Header中包含簽名,簽名是由Authorization這個Header指定的,具體的構成規(guī)則如下:AccessKeySecret表示簽名所需的秘鑰VERB表示HTTP請求方法,例如PUT,GET,DELETE等Content-MD5表示請求內容數據的MD5值,對于圖片處理服務這里為空字符串Content-Type表示請求內容的類型,對于圖片處理服務這里為空字符串Date表示此次操作的時間,且必須為H
26、TTP1.1中支持的GMT格式CanonicalizedOSSHeaders表示 http中的object meta組合,對于圖片處理服務這里為空字符串CanonicalizedResource構造方法請參考上文URL簽名中的CanonicalizedResource的生成方法。需要注意的Date和CanonicalizedResource不能為空如果請求中的Date時間和OSS服務器的時間差正負15分鐘以上,OSS圖片處理服務將拒絕該服務,并 返回HTTP 403錯誤。使用 OSS SDK 訪問圖片服務本節(jié)主要介紹如何使用 OSS 的 Python SDK 去獲取 private bucke
27、t 的圖片處理服務,因為圖片處理服務都是GET 操作,所以使用 OSS Python SDK 主要以 Get Object 為主。以 Python SDK 為例,在 Python SDK里有一個 get_object 操作,傳入的參數一般是 bucket,object。OSSbucket = image-demo object = example.jpgself.oss.get_object(bucket,object)獲取bucket: image-demo,object:example.jpg圖片服務簡單縮略bucket = image-demo object = example.jpg
28、query = 100w_100h.jpgobject = object + + query self.oss.get_object(bucket, object)獲取bucket: image-demo,object: example.jpg , 轉換字符是: 100w_100h.jpg圖片水印獲取bucket: image-demo,object: example.jpg ,bucket = image-demo object = example.jpgquery = watermark=1&object=cGFuZGEucG5n&t=90&p=5 object = object + +
29、queryself.oss.get_object(bucket, object)轉換字符是:watermark=1&object=cGFuZGEucG5n&t=90&p=5文字水印獲取bucket: image-demo, object:example.jpgbucket = image-demo object = example.jpgquery = watermark=2&text=SGVsbG8g5Zu-54mH5pyN5YqhIQ object = object + + queryself.oss.get_object(bucket, object)轉換字符是:watermark=2&
30、text=SGVsbG8g5Zu-54mH5pyN5YqhIQ樣式bucket = image-demo獲取bucket: image-demo, object:example.jpg 樣式名:pipe1object = example.jpg style = pipe1 object = object + ! + style self.oss.get_object(bucket, object)管道獲取bucket: image-demo, object:example.jpgbucket = image-demo object = example.jpgquery = 200w.jpg|w
31、atermark=1&object=cGFuZGEucG5n&t=90&p=5 object = object + + queryself.oss.get_object(bucket, object)管道操作: 200w.jpg|watermark=1&object=cGFuZGEucG5n&t=90&p=5圖片上傳圖片服務處理的圖片來自于OSS,所以圖片的上傳實際是往OSS上同名Bucket上傳的。 所有的上傳請參考OSS 開發(fā)人員指南中的上傳文件假如用戶需要使用杭州的圖片服務,域名為 上傳前提條件:1 同區(qū)域OSS存儲空間(Bucket)。例如叫oss-sample,杭州的OSS訪問域名為
32、oss-cn- 。2 通過控制臺或者SDK上傳圖片。例如上傳logo.png到oss-sample。控制臺上傳圖片控制臺:上傳文件SDK上傳圖片SDK:Java SDK-Object中PutObject注意事項必須是同區(qū)域的OSS和IMG必須是同名的Bucket和Channel必須使用OSS的域名上傳圖片縮放單邊固定縮略可以對圖片某一邊(寬或高)進行固定到一個長度,另外一邊按照比例進行調整。參數名稱描述取值范圍w指定目標縮略圖的寬度1-4096h指定目標縮略圖的高度。1-4096l目標縮略圖大于原圖是否處理。值是1, 即不處理,是0,表示處理0/1, 默認是0注意事項對縮略后的圖片的大小有限制
33、,目標縮略圖的寬與高的乘積不能超過4096 * 4096, 而且單邊的長度不能超過4096 * 4。如果只指定寬度或者高度,原圖將默認轉換成jpg格式,如果原圖是png, webp, bmp可能會導致圖出現變形。詳細可以查看質量變換及格式轉換。示例將圖縮略成高度為100,寬度按比例處理。 HYPERLINK /example.jpg%40100h /example.jpg100h將圖縮略成寬度為100,高度按比例處理。 HYPERLINK /example.jpg%40100w /example.jpg100w將圖縮略成寬度為500,高度按比例處理,如果目標縮略圖大于原圖不處理。 HYPERL
34、INK /example.jpg%40500w_1l /example.jpg500w_1l指定寬高縮略可以對圖片指定寬或高原圖,按照長邊短邊進行調整。參數名稱描述取值范圍w指定目標縮略圖的寬度1-4096h指定目標縮略圖的高度。1-4096e縮放優(yōu)先邊, 默認值:0:長邊(默認值) 由于圖片縮放過程中,原圖尺寸與縮放尺寸不一定是相同比例,需要指定以長邊還是短邊優(yōu)先進行縮放,如原圖200 * 400(比例1:2),需要縮放為100 * 100(比例1:1).長邊優(yōu)先時,縮放為50 100;短邊優(yōu)先時(e=1),縮放為100 200,若不特別指定,則代表長邊優(yōu)先0表示按長邊優(yōu)先,默認值1表示按短
35、邊優(yōu)先l目標縮略圖大于原圖是否處理。如果值是1, 即不處理,是0,表示處理0/1, 默認是0注意事項對縮略后的圖片的大小有限制,目標縮略圖的寬與高的乘積不能超過4096 * 4096, 而且單邊的長度不能超過4096 * 4。如果不指定格式,原圖將默認轉換成jpg格式,如果原圖是png, webp, bmp可能會導致圖出現變形。詳細可以查看質量變換及格式轉換。示例將圖縮略成寬度為100,高度為100,按長邊優(yōu)先 HYPERLINK /example.jpg%40100h_100w_0e /example.jpg100h_100w_0e將圖縮略成寬度為100,高度為100,按短邊優(yōu)先 HYPER
36、LINK /example.jpg%40100h_100w_1e /example.jpg100h_100w_1e強制寬高縮略可以強制指定目標縮略圖的高度和寬度,忽略原圖的寬高比。注意這可能會導致圖片變形。參數名稱描述取值范圍w指定目標縮略圖的寬度1-4096h指定目標縮略圖的高度。1-4096e縮放優(yōu)先邊,如果是強制縮略,值是:22(強制縮略)l目標縮略圖大于原圖是否處理。如果值是1, 即不處理,是0,表示處理0/1, 默認是0注意事項此操作會導致圖變形。如果不指定格式,原圖將默認轉換成jpg格式,如果原圖是png, webp, bmp可能會導致圖出現變形。詳細可以查看質量變換及格式轉換。示
37、例將圖強制縮略成寬度為100,高度為100 HYPERLINK /example.jpg%40100h_100w_2e /example.jpg100h_100w_2e按比例縮放可以通過指定一個比例百分比參數,讓圖片按照指定的比例進行縮略或者放大。參數名稱描述取值范圍p倍數百分比。 小于100,即是縮小,大于100即是放大。1-1000注意:如果不指定格式,原圖將默認轉換成jpg格式,如果原圖是png, webp, bmp可能會導致圖出現變形。詳細可以查看質量變換及格式轉換。如果參數p跟w, h 合用時,p將直接作用于w, h (乘以p%) 得到新的w,h, 如100w_100h_200p 的
38、作用跟200w_200h 的效果是一樣的。如果對圖片進行倍數放大,單邊的最大長度不能超過4096 * 4 。示例將圖按比例放大兩倍。 HYPERLINK /example.jpg%40200p /example.jpg200p將圖按比例縮略到原來的1/2 HYPERLINK /example.jpg%4050p /example.jpg50p縮略后填充先把圖按短邊優(yōu)先縮略,然后再用指定顏色填充剩余區(qū)域參數名稱描述取值范圍w指定目標縮略圖的寬度1-4096h指定目標縮略圖的高度。1-4096e縮略優(yōu)先邊,這里必須指定值為44bgc指定填充的背景顏色。默認不指定,為白色填充。參數格式:-bgc如
39、:100-100-100bgc red,green,blue指定一個顏色Red, green, blue0-255注意事項如果不指定格式,原圖將默認轉換成jpg格式,如果原圖是png, webp, bmp可能會導致圖出現變形。詳細可以查看質量變換及格式轉換。bgc 由紅綠藍三原色這三個參數指定生成對應顏色。示例將圖按短邊縮略到100 x100, 然后按白色填充 HYPERLINK /example.jpg%40100w_100h_4e /example.jpg100w_100h_4e將圖按短邊縮略到100 x100, 然后按紅色填充 HYPERLINK /example.jpg%40100w_
40、100h_4e_100-0-0bgc /example.jpg100w_100h_4e_100-0-0bgc圖片裁剪自動裁剪自動裁剪表示圖片先按短邊縮略,然后從縮略的目標圖片裁剪出中間部分得到對應指定高度和寬度的目標縮略 圖。參數名稱描述取值范圍w指定目標縮略圖的寬度1-4096h指定目標縮略圖的高度。1-4096e縮放優(yōu)先邊,這里指定按短邊優(yōu)化1c是否進行裁剪。如果是想對圖進行自動裁剪,必須指定為10,1l如果目標縮略圖大于原圖是否處理,值是1, 即不處理,是0,表示處理0/1, 默認是0注意事項自動裁剪從按短邊優(yōu)先縮略的圖中間進行裁剪,如果想從裁剪出圖的左邊部分或者右邊部分。即不指 定裁剪
41、參數C, 然后再利用管道實現如果不指定格式,原圖將默認轉換成jpg格式,如果原圖是png, webp, bmp可能會導致圖出現變形。詳細可以查看質量變換及格式轉換。示例將圖自動裁剪成寬度為100,高度為100的效果圖 HYPERLINK /example.jpg%40100h_100w_1e_1c /example.jpg100h_100w_1e_1c將圖片按短邊裁剪然后,裁剪出左半部分。 HYPERLINK /example.jpg%40100h_100w_1e /example.jpg100h_100w_1e|0-0-100-100a區(qū)域裁剪可以將圖片分成多個區(qū)域,按照區(qū)域進行裁剪。參數名
42、稱描述取值范圍用戶可以指定對某一個區(qū)域進行裁剪。在這里把圖片分成個區(qū)域。參數格式rc:x-rc.jpgwidth 指的是裁剪的寬度0,width, height的范圍是1,40964096Height 指的是裁剪的高度0,4096pos指的是裁剪區(qū)域,取值范圍是1,9,默認是左上角,區(qū)域數值對應表見下圖如果想裁剪左上角,寬度是100, 高度是200的區(qū)域,參數是:100 x200-1rc如果想裁剪左上角,寬度是100,高度是圖片的原高度參數是:100 x0-1rc 或者100 x- 1rc如果高度或者寬度不填,或者參數是0,或者參數大于原圖。默認是按原圖的高度或寬度返回。區(qū)域數值對應表注意事項
43、如果不指定格式,原圖將默認轉換成jpg格式,如果原圖是png, webp, bmp可能會導致圖出現變形。詳細可以查看質量變換及格式轉換。如果從起點開始指定的寬度和高度超過了原圖,將會直接裁剪到原圖結尾。示例裁剪原圖左上區(qū)域寬度100高度200的區(qū)域 HYPERLINK /example.jpg%40100 x200-1rc /example.jpg100 x200-1rc內切圓用戶可以將圖片只保存圓形圖案,如果圖片的最終格式是png, webp, bmp等支持透明通道的圖片,那么圖片非圓形區(qū)域的地方將會以透明填充。如果圖片的最終格式是jpg。那么非圓形區(qū)域是以白色進行填充。參數參數描述取值ra
44、dius : 1, 4096如果radius能指定圓的半徑。但是圓的的半徑不能超過原圖的最小邊的一半。如果半徑超過。ci從圖片取出圓形區(qū)域參數格式:radius-typeci圓的大小仍然是原圓的最大內切圓。type: 0, 10:表示圖片最終大小仍然是原圖大小1: 表示圖片最終大小是能包含這個圓的最小正方形注意事項如果圖片的最終格式是png, webp, bmp等支持透明通道的圖片,那么圖片非圓形區(qū)域的地方將會以透明填充。如果圖片的最終格式是jpg。那么非圓形區(qū)域是以白色進行填充。推薦使用保存成png格式指定半徑大于原圖最大內切圓的半徑。 圓的大小仍然是圖片的最大內切圓。示例裁剪半徑是100,
45、 保持圓是原來大小 HYPERLINK /example.jpg%40100-0ci /example.jpg100-0ci裁剪半徑是100, 保存圓是能包含圓的最小正方形,格式是png HYPERLINK /example.jpg%40100-1ci.png /example.jpg100-1ci.png裁剪半徑是1000, 保存圓是能包含圓的最小正方形,格式是png HYPERLINK /example.jpg%401000-1ci.png /example.jpg1000-1ci.png圓角矩形可以保存圖片是圓角矩形,并可以指定圓角的大小 。參數參數描述取值2ci從圖片取出圓形區(qū)域參數格
46、式:radius-2ciradius : 1, 4096 radius指定圓角的半徑。但是生成的最大圓角的的半徑不能超過原圖的最小邊的一半。注意事項如果圖片的最終格式是png, webp, bmp等支持透明通道的圖片,那么圖片非圓形區(qū)域的地方將會以透明填充。如果圖片的最終格式是jpg. 那么非圓形區(qū)域是以白色進行填充 。推薦使用保存成png格式指定半徑大于原圖最大內切圓的半徑。 圓角的大小仍然是圖片的最大內切圓。示例裁剪圓角半徑是30, 格式是jpg HYPERLINK /example.jpg%4030-2ci /example.jpg30-2ci圖片先自動裁剪成100 x100, 然后保存
47、成圓角半徑是10,格式是png HYPERLINK /example.jpg%40100w_100h_1e_1c_10-2ci.png /example.jpg100w_100h_1e_1c_10-2ci.png索引切割將圖片分成x,y軸,按指定長度(length)切割,指定索引(index),取出指定的區(qū)域。參數參數描述取值參數格式:lengthx-indexiclength:1,切割邊邊長,單位px。如果超出切割邊的大小, 返 回 原 圖 。 index:0,最大塊數)。如果超出最大塊數,返回原圖?;騦engthy-indexiciclength是切割長度index 是表示塊數。(0表示第
48、一塊)其中x表示按x軸,水平線切割。y 表示按y軸,垂直線切割注意事項如果指定的索引大于切割后范圍,將返回原圖。示例對圖片x軸按100平分,取出第一塊。 HYPERLINK /example.jpg%40100 x-0ic /example.jpg100 x-0ic對象存儲 OSS/圖片服務手冊34 PAGE 89對圖片y軸按100平分,取出第一塊。 HYPERLINK /example.jpg%40100y-0ic /example.jpg100y-0ic對圖片x軸按100平分,取出第一百塊,仍然是原圖 HYPERLINK /example.jpg%40100 x-100ic /exampl
49、e.jpg100 x-100ic高級裁剪可以通過指定起始橫坐標,縱坐標及裁剪的寬度和裁剪的高度對圖進行高級裁剪。參數名稱描述取值范圍a參數的類型:x-y-width- length如:100-50-200-150a一共四個參數,每個參數之間以-隔開。第一個參數表示起始點x坐標(以左上角為原點),第二個參數表示起始點y坐標, 第三個參數表示要裁剪的寬度,第四width, height的范圍是1-4096個參數表示要裁剪的高度。如100-50-200-150a 表示從點(100, 50) 裁剪大小為(200,150)的圖片。注意:可以將第三個參數,第四個參數置為0, 表示裁剪到圖片的邊緣。如100
50、-50-0-0a 表示從點(100, 50) 裁剪到圖片的最后注意事項如果不指定格式,原圖將默認轉換成jpg格式,如果原圖是png, webp, bmp可能會導致圖出現變形。詳細可以查看質量變換及格式轉換。如果指定的起始橫縱坐標大于原圖,將會返回錯誤:BadRequest, 錯誤內容是:Advance cuts position is out of image.如果從起點開始指定的寬度和高度超過了原圖,將會直接裁剪到原圖結尾。使用示例裁剪圖從起點(100, 50)到圖的結束 HYPERLINK /example.jpg%40100-50-0-0a /example.jpg100-50-0-0a
51、- 裁剪圖從起點(100, 50)到裁剪100 x100的大小 HYPERLINK /example.jpg%40100-50-100-100a /example.jpg100-50-100-100a圖片旋轉旋轉可以對處理后的圖片進行按順時針旋轉參數名稱描述取值范圍r默認值 :0(表示不旋轉)0, 360注意事項旋轉后的圖可能會導致圖的尺寸變大。旋轉對圖的尺寸有限制,圖片的寬或者高不能超過4096。示例將原圖縮略成寬度為100,高度為100,按順時針旋轉90度 HYPERLINK /example.jpg%40100w_100h_90r /example.jpg100w_100h_90r將原圖
52、按順時針旋轉270度 HYPERLINK /example.jpg%40270r /example.jpg270r自適應方向某些手機拍攝出來的照片可能帶有旋轉參數(存放在照片exif信息里面)參數名稱描述取值范圍o進 行 自 動 旋 轉 0:表示按原圖默認方向,不進行 自 動 旋 轉 1:表示根據圖片的旋轉參數,對圖片進行自動旋轉,如果存在縮略參數,是先進行縮略,再進行旋轉。2: 表示根據圖片的旋轉參數,對圖片進行自動旋轉,如果存在縮略參數,先進行旋轉,再進行縮略0, 2注意事項如果采用縮略旋轉1,可能會導致圖片最終的寬度和高度跟指定的參數不符。進行自適應方向旋轉,必須要求原圖的寬度和高度必須
53、小于4096.如果原圖是沒有旋轉參數,加上1o, 2o參數不會對圖有影響。示例將圖縮略成寬度為100,對圖片不做自動旋轉處理 HYPERLINK /f.jpg%40100w.jpg /f.jpg100w.jpg將圖縮略成寬度為100,對圖片進行自動旋轉1 HYPERLINK /f.jpg%40100w_2o.jpg /f.jpg100w_2o.jpg得到的目標效果圖寬度是100,高度是127。將圖縮略成寬度為100,對圖片進行自動旋轉2 HYPERLINK /f.jpg%40100w_1o.jpg /f.jpg100w_1o.jpg得到的目標效果圖寬度是79, 高度是100。圖片效果銳化可以對
54、處理后的圖片進行銳化處理,使圖片變得清晰。參數名稱描述取值范圍sh表示進行銳化處理。取值為銳化參數,參數越大,越清晰。50, 399為達到較優(yōu)效果,推薦取值為100示例對原圖進行銳化處理,銳化參數為100。 HYPERLINK /example.jpg%40100sh /example.jpg100sh對原圖進行銳化處理,銳化參數為50。 HYPERLINK /example.jpg%4050sh /example.jpg50sh將原圖縮略成高度100, 寬度100,并進行銳化操作,保存成png格式 HYPERLINK /example.jpg%40100w_100h_100sh.png /e
55、xample.jpg100w_100h_100sh.png模糊效果可以對圖片進行模糊操作。參數描述取值參數bl參數格式:radius-sigmabl radius 是 模 糊 半 徑 sigma是正態(tài)分布的標準差如:3-2bl 模糊半徑是3,標準差是2radius 取 值 在 1,50, radius 越 大 , 越 模 糊 sigma取值 1,50,越大,越模糊示例對圖片進行模糊半徑是3, 標準差是2。 HYPERLINK /example.jpg%403-2bl /example.jpg3-2bl圖片先自動裁剪成100 x100, 然后對圖片進行模糊半徑是3, 標準差是2。 HYPERLI
56、NK /example.jpg%40100w_100h_1e_1c_3-2bl /example.jpg100w_100h_1e_1c_3-2bl亮度和對比度可以對處理后的圖片進行亮度和對比度調節(jié)參數名稱描述取值范圍b亮度調整 0表示原圖亮度,小于0表示亮度越低,大于0表示亮度越高-100, 100d對比度調整 0表示原圖對比度,小于0表示對比越低,大于0表示對比越高-100, 100示例將原圖只進行亮度調整 HYPERLINK /example.jpg%4050b /example.jpg50b將原圖只進行對比度調整 HYPERLINK /example.jpg%40-50d /exampl
57、e.jpg-50d將原圖進行亮度和對比度調整 HYPERLINK /example.jpg%40-50d_50b /example.jpg-50d_50b圖片水印概述水印操作可以在圖片上設置另外一張圖片或者文字做為水印。水印類型分成圖片水印,文字水印,和文圖混合水印。水印基本參數圖片水印,文字水印,和文圖混合水印都可以使用如下參數。名稱描述參數類型t參數意義:透明度, 如果是圖片水印,就是讓圖片變得透明,如果是文字水印,就是讓水印變透明。默認值:100, 表示 100%(不透明) 取值范圍: 0-100可選參數p參數意義:位置,水印打在圖的位置,位置如成如下圖。默認值:9,表示在右下角打水印可
58、選參數取值范圍:1-9x參數意義:水平邊距, 就是距離圖片邊緣的水平距離, 這個參數只有當水印位置是左上,左中,左下, 右上,右中,右下才有意義默認值:10取值范圍:0 - 4096 單位:像素(px)可選參數y參數意義:垂直邊距, 就是距離圖片邊緣的垂直距離, 這個參數只有當水印位置是左上,中上, 右上,左下,中下,右下才有意義默認值:10取值范圍:0 - 4096 單位:像素(px)可選參數voffset參數意義: 中線垂直偏移,當水印位置在左中,中部,右中時,可以指定水印位置根據中線往上或者往下偏移。默認值:0取值范圍:-1000, 1000單位:像素(px)可選參數watermark參
59、數意義:選擇水印的類型取 值 范 圍 1, 2, 3 1:圖片水印 2:文字水印3:文圖混合水印區(qū)域數值對應表注意事項水平邊距、垂直邊距、中線垂直偏移可以調節(jié)不僅可以調節(jié)水印在圖片中的位置,而且當圖片存在多 重水印時,也可以調節(jié)兩張水印在圖中的布局。用到的URL安全的Base64位編碼可以參考關鍵詞。示例右下角打上文字水印 HYPERLINK http:/image-demo.img-cn-/ http:/image-demo.img-cn- /example.jpgwatermark=2&type=d3F5LXplbmhlaQ&size=40&text=SGVsbG 8g5Zu-54mH5p
60、yN5YqhIQ右下角打上文字水印,水平邊距是 10,垂直邊距20 HYPERLINK http:/image-demo.img-cn-/ http:/image-demo.img-cn- /example.jpgwatermark=2&type=d3F5LXplbmhlaQ&size=40&text=SGVsbG 8g5Zu-54mH5pyN5YqhIQ&color=I0ZGRkZGRg&t=90&p=9&x=10&y=20右中部分打上水印,水平邊距為10, 垂直中線偏移為20,透明度為50 HYPERLINK http:/image-demo.img-cn-/ http:/image-de
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年工程促成居間合同集錦
- 2024年工程助理勞務合作協(xié)議
- 2024丙丁雙方關于虛擬現實技術開發(fā)與應用合同
- 2024年嚴馳鄭黛共同發(fā)起的公益項目捐贈合同
- 井區(qū)安全員年終個人述職匯報-述職報告范文
- 2024年廣告效果監(jiān)測與評估合同
- 2024年度石油天然氣管道建設合同
- 2024年度網頁美工設計外包合同
- 2024年度圖書訂閱合同
- 2024年度旅游管理與服務合同
- 裝修垃圾清運處置方案
- JC-T 2536-2019水泥-水玻璃灌漿材料
- 品牌授權協(xié)議書
- 藝術設計就業(yè)職業(yè)生涯規(guī)劃
- 《狙擊手》和《新神榜楊戩》電影賞析
- 槍庫應急處置預案
- 老年患者術后譫妄的護理干預
- 《凸透鏡成像的規(guī)律》課件
- 倉庫管理中的客戶服務和溝通技巧
- 規(guī)劃選址及用地預審
- 土砂石料廠項目融資計劃書
評論
0/150
提交評論