COS has integrated Cloud Infinite (CI), a one-stop professional multimedia solution that offers the image processing features outlined below. For more information, please see Image Processing Overview.
Service | Feature | Description |
---|---|---|
Basic image processing service | Scaling | Proportional scaling, scaling image to target width and height, and more |
Cropping | Cut (regular cropping), crop (scaling and cropping), iradius (inscribed circle cropping), and scrop (smart cropping) | |
Rotation | Adaptive rotation and common rotation | |
Format conversion | Format conversion, GIF optimization, and progressive display | |
Quality conversion | Changes the quality of images in JPG and WEBP formats | |
Gaussian blur | Blurs images | |
Sharpening | Sharpens images | |
Watermarking | Image watermarks, text watermarks | |
Obtaining image information | Basic information, EXIF data, average hue | |
Removing metadata | Includes EXIF data | |
Quick thumbnail template | Performs quick format conversion, scaling, and cropping to generate thumbnails | |
Setting style | Sets image styles to easily manage images for different purposes |
For the parameters and method descriptions of all the APIs in the SDK, see Api Documentation.
The following example shows how to automatically process an image when you upload it to COS.
Upon successful upload, COS will save both the original and processed images. You can obtain the processing result using a common download request.
PutObjectRequest request = new PutObjectRequest(bucket, key, srcPath);
JObject o = new JObject();
// Do not return the original image
o["is_pic_info"] = 0;
JArray rules = new JArray();
JObject rule = new JObject();
rule["bucket"] = bucket;
rule["fileid"] = "desample_photo.jpg";
// Processing parameters
rule["rule"] = "imageMogr2/thumbnail/400x400";
rules.Add(rule);
o["rules"] = rules;
string ruleString = o.ToString(Formatting.None);
request.SetRequestHeader("Pic-Operations", ruleString);
// Perform the request
PutObjectResult result = cosXml.PutObject(request);
Note:
For the complete sample, go to GitHub.
The following example shows how to process an in-cloud image and store the processing result in COS.
JObject o = new JObject();
// Do not return the original image
o["is_pic_info"] = 0;
JArray rules = new JArray();
JObject rule = new JObject();
rule["bucket"] = bucket;
rule["fileid"] = "desample_photo.jpg";
// Processing parameters
rule["rule"] = "imageMogr2/thumbnail/400x400";
rules.Add(rule);
o["rules"] = rules;
string ruleString = o.ToString(Formatting.None);
ImageProcessRequest request = new ImageProcessRequest(bucket, key, ruleString);
ImageProcessResult result = cosXml.ImageProcess(request);
Note:
For the complete sample, go to GitHub.
Was this page helpful?