Manual Transformations of Images via Public Share URLs

Modified on Wed, 8 Oct at 5:41 PM

ENABLING THE FEATURE

This feature enables users to manually add parameters to the Public sharing URL of image assets to transform the asset on the fly. This is an alternative to creating Transformation Presets via the Share / Embed feature.

To get started, enable the Manual Image Transformations For Public Images setting under Admin > Settings > Resources - Public Sharing.

SUPPORTED IMAGES

All image assets that currently support preview generation can be used for transformation. Some restrictions on the type of transformations apply for certain file formats (in particular RAW).

The maximum file size limit supported is 50MB.

Any image that supports preview generation is supported (see full list here), however not for all parameters.

The public URL, which can be retrieved for each asset from the Share / Embed action, will look like this:

https://cdn.intelligencebank.com/share/us/clientid/folderid/fileid/original/name

The parameters are inserted in replacement of the /original/ part.

You can combine multiple parameters with the character &.

SUPPORTED TRANSFORMATION PARAMETERS

Basic Options

  • Extension (ext)

This parameter is to convert the source format to one of the following destination formats.

# Accepted Values: jpeg, jpg, bmp, gif, png, webp

Example

Convert extension to PNG:

https://cdn.intelligencebank.com/share/us/clientid/folderid/fileid/ext=png/name

The desired extension can also be added to the name portion at the end of the URL.

https://cdn.intelligencebank.com/share/us/clientid/folderid/fileid/original/name.png

  • Size (size)

The size parameter allows to change the original image to a different size. Note that any cropping has to be applied separately (see below).

# Accepted Value: WidthxHeight or Width or xHeight or Xpercent
# Resize with &ignore: Ignore aspect ratio and also match.
# Resize with &nolarge: Ignore aspect ratio but never enlarge.
 
Examples
 
Resize to 50% of the original:

size=50percent  

https://cdn.intelligencebank.com/share/us/clientid/folderid/fileid/size=50percent/name

Resize to 500 width:

https://cdn.intelligencebank.com/share/us/clientid/folderid/fileid/size=500/name

Resize to 500 height:

https://cdn.intelligencebank.com/share/us/clientid/folderid/fileid/size=x500/name 

Resize to 500 width x 500 height:

https://cdn.intelligencebank.com/share/us/clientid/folderid/fileid/size=500x500&ignore/name

If &ignore is not entered, the closest match with the same aspect ratio as the original will be automatically applied.

  • Crop (crop & cropgravity)

# Accepted Values:
 
- crop=a{{HORIZONTALSTARTPOINT}}xa{{VERTICALSTARTPOINT}} to select a custom crop position. Note that the entire cropped area has to be within the image. Cropping an area position outside the image is currently not supported.
 
The cropping position starts from (0,0), which is the top left corner. This is the default if no cropping position information is entered.
 
(100,100) will therefore start the cropping position 100 pixels on the right from the top left corner, and 100 pixels below.
 
- cropgravity=center, east, northeast, north, northwest, south, southeast, south, southwest, west, auto (for automatic focal point detection)

Note: You are still required to enter the desired pre-crop dimensions if you want to resize the original image before cropping.

Examples

Crop 100x100 starting 10 pixels on the right and 10 pixels from the top of top left corner:

https://cdn.intelligencebank.com/share/us/clientid/folderid/fileid/crop=100x100a10a10/name

Crop 100x100 starting from the center right of the image:

https://cdn.intelligencebank.com/share/us/clientid/folderid/fileid/crop=100x100&cropgravity=East/name

Crop 100x100 with automatic focal point detection:

https://cdn.intelligencebank.com/share/us/clientid/folderid/fileid/crop=100x100&cropgravity=auto/name

  • Extent (extentbackground & extentgravity)

When the image itself or cropped area is smaller than the desired output size, you can chose to still extend the output size and fill the missing space with a color background. This is also useful for creating a border.
 
# Accepted Values:
 
- extent={{Width}}x{{Height}}
 
- extentbackground= Any common color (eg. skyblue), rgba or rga color code.
 
- extentgravity=center, east, northeast, north, northwest, south, southeast, south, southwest, west to chose the position of the image on the enlarged canvas.
 
Example
 
Resize an image to 500 x 500, and then create a canvas of 550 x 500, with a black background, and the image centered on the new output:
 
https://cdn.intelligencebank.com/share/us/clientid/folderid/fileid/size=500x500&ignore&extent=550x550&extentbackground=black&extentgravity=center/name
  • Rotate (rotate)

# Accepted Values: 0 to 360 (rotation goes clockwise).
 
Example
 
Rotate the image by 90 degrees to the right:
 
https://cdn.intelligencebank.com/share/us/clientid/folderid/fileid/rotate=90/name 
  • Flip (flip)
# Accepted Values: hor (for horizontal flip), ver (for vertical flip).
 
Example
 
Flip horizontally and vertically:

https://cdn.intelligencebank.com/share/us/clientid/folderid/fileid/flip=hor&flip=ver/name
  • Quality (quality)

Only applies for  "jpg", "jpg2", "bpg", "djvu", "djv", "icer", "jbig2", "pgf", "jxr", "hdp", "wdp" formats.

# Accepted Values: 1 to 100 (original quality).

Example:

Change quality to 50%

https://cdn.intelligencebank.com/share/us/clientid/folderid/fileid/quality=50/name
  • Compression Type (compresstype)

Use pixel compression specified by type when writing the image.

# Accepted Values:

B44, B44A, BZip, DWAA, DXT1, DXT3, DXT5, Fax, Group4, JBIG1, JBIG2, JPEG, JPEG2000, Lossless, LosslessJPEG, LZMA, LZW, None, Piz, Pxr24, RLE, Zip, RunlengthEncoded, WebP, ZipS, Ztsd
 
Example
 
Change Compression Type to LosslessJPEG:
 
https://cdn.intelligencebank.com/share/us/clientid/folderid/fileid/compresstype=LosslessJPEG/name
  • Color Space (colorspace)
# Accepted Values:
 
CIELab, CMY, CMYK, Gray, HCL, HCLp, HSB, HSI, HSL, HSV, HMB, Lab, LCH, LCHab, LCHuv, LinearGray, LMS, Log, Luv, OHTA, Rec601YCbCr, Rec709YCbCr, RGB, scRGB, sRGB, Transparent, xyY, XYZ, YCbCr, YDbDr, YCC, YIQ, YPbPr, YUV
 
Example
 
Change Color Space to LosslessJPEG:
 
https://cdn.intelligencebank.com/share/us/clientid/folderid/fileid/compresstype=LoslessJPEG/name
 
Color Spaces are not applicable to all file types. For more information, visit the ImageMagick website.
  • Density (density)

Set the horizontal and vertical resolution of an image for rendering to devices.

# Accepted Values: 1+

Example:

Change resolution to 72dpi.

https://cdn.intelligencebank.com/share/us/clientid/folderid/fileid/density=72/name

 

TO NOTE
  • svg and the majority of RAW formats only support the ext parameter.
  • Quality only supports jpg, jpg2, bpg, djvu, djv, icer, jbig, pgf, jxr, hdp, wdp extensions.
  • When a parameter is not supported, it will get skipped.
  • When a parameter entered is incorrect, an error page will appear.
  • The parameters are order sensitive and will be processed successively as inputted in the URL.

ABOUT TRANSFORMATIONS & PUBLIC SHARING

Image Transformations is an optional add-on which needs to be enabled on your platform as part of the Public Sharing feature set. The feature comes with a default monthly allowance, which covers 200GB of data transfer, 1000 transformations and 1000 invalidations per month.

Definitions
 
An image transformation happens the first time an image is transformed with one of the manual parameters listed above. The asset is then cached on a Cloudfront CDN architecture, where that version is then always retrieved from. A new transformation is only required if requested again after it has been invalidated from Cloudfront.
 
File invalidation (or recall) happens when a public asset or any of its transformations, have previously been distributed via Cloudfront CDN and is deleted, moved to a different folder (as the public link is tied to the folder ID), updated with a new file or version, or when public sharing is disabled on the parent folder. When an asset is loaded Cloudfront, there is no contact with the platform to check if the asset is still available or has been updated since the initial load, so invalidating consists of clearing out these public versions, so that when requested next, Cloudfront will go to the platform to request the asset again, and at that time check if the asset is still available for public sharing and/or if a new version is available.

Please contact your Customer Success Manager to learn more. You can also submit a request directly from the Helpdesk Center.

Was this article helpful?

That’s Great!

Thank you for your feedback

Sorry! We couldn't be helpful

Thank you for your feedback

Let us know how can we improve this article!

Select at least one of the reasons
CAPTCHA verification is required.

Feedback sent

We appreciate your effort and will try to fix the article