Image Processing

Last updated: 2021-03-15 18:29:03

    Overview

    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

    SDK API References

    For the parameters and method descriptions of all the APIs in the SDK, see Api Documentation.

    Processing Images Being Uploaded

    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.

    Sample code

    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.

    Processing In-Cloud Images

    The following example shows how to process an in-cloud image and store the processing result in COS.

    Sample code

    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?

    Was this page helpful?

    • Not at all
    • Not very helpful
    • Somewhat helpful
    • Very helpful
    • Extremely helpful
    Send Feedback
    Help