Transform Images
Beta
This is a beta version of Image and Video Manager. Use of this version is as is and as available while still in testing and development.
Add transformations to your Image and Video manager image policy to automate processes like cropping, rotating, and resizing, or to apply visual effects to your images. Multiple transformations can be nested to achieve the desired result.
Set up transformations in the akamai_imaging_policy_image
data source.
This guide provides the arguments to use when configuring image transformations.
Available transformations
The sections that follow cover the available image transformations and their supporting arguments.
-
To manipulate the size, shape, and orientation of your images, use:
append
,aspect_crop
,crop
,face_crop
,feature_crop
,fit_and_fill
,mirror
,region_of_interest_crop
,relative_crop
,resize
,rotate
,scale
,shear
,trim
-
To apply visual effects to your images, use:
background_color
,blur
,chroma_key
,composite
,contrast
,goop
,grayscale
,hsl
,hsv
,max_colors
,mono_hue
,opacity
,remove_color
,unsharp_mask
-
To group together a sequence of transformations and represent it as a single transformation, use:
compound
-
To apply artistic transformations on a per-image basis without having to create multiple policies, use:
im_query
-
To conditionalize transformations based on the dimensions or orientation of original images, use:
if_dimension
,if_orientation
A subset of transformations can be applied after image and quality settings are applied (post-processing). This subset includes background_color
, blur
, chroma_key
, composite
, compound
, contrast
, goop
, grayscale
, hsl
, hsv
, if_dimension
, if_orientation
, max_colors
, mirror
, mono_hue
, opacity
, remove_color
, unsharp_mask
.
For more information about the available image transformations, see Add image transformations and conditions.
Variables
Many Image and Video Manager arguments let you specify a variable object instead of a string, number, or boolean value.
When using variables, you define the variable name in an argument that ends in _var
. For example, if you want to have a variable for the gravity setting in a transformation, you’d use the gravity_var
argument, not the gravity
one.
Append
This transformation supports these arguments:
append
- (Optional) Places a specifiedimage
beside the source image. The transformation places theimage
on a major dimension, then aligns it on the minor dimension. Transparent pixels fill any area not covered by either image.image
- (Required) The image type, which is one ofbox_image
,circle_image
,text_image
, orurl_image
. See Image types.gravity
- (Optional) The placement of theimage
relative to the source image. The available values include eight cardinal directions (North
,South
,East
,West
,NorthEast
,NorthWest
,SouthEast
,SouthWest
) andCenter
by default. If setting a variable for this argument, usegravity_var
instead.gravity_priority
- (Optional) Determines the exact placement of theimage
whengravity
isCenter
or a diagonal direction. The value is eitherhorizontal
orvertical
. Usehorizontal
to append animage
east or west of the source image. This aligns theimage
on the vertical gravity component, placingCenter
gravity east. Usevertical
to append animage
north or south of the source image. This aligns theimage
on the horizontal gravity component, placingCenter
gravity south. If setting a variable for this argument, usegravity_priority_var
instead.preserve_minor_dimension
- (Optional) Defines whether to preserve the source image's minor dimension. This argument isfalse
by default. The minor dimension is the dimension opposite to the dimension that the appendingimage
is placed. If setting a variable for this argument, usepreserve_minor_dimension_var
instead.
Aspect crop
This transformation supports these arguments:
aspect_crop
- (Optional) Changes the height or width of an image to an aspect ratio of your choosing. The transformation does this by either cropping or expanding the area.allow_expansion
- (Optional) Increases the size of the image canvas to achieve the requested aspect ratio instead of cropping the image. If setting a variable for this argument, useallow_expansion_var
instead.height
- (Optional) The height of the aspect ratio to crop. If setting a variable for this argument, useheight_var
instead.width
- (Optional) The width of the aspect ratio to crop. If setting a variable for this argument, usewidth_var
instead.x_position
- (Optional) The horizontal portion of the image you want to keep when applying aspect ratio cropping. If usingallow_expansion
, this setting defines the horizontal position of the image on the new expanded image canvas. If setting a variable for this argument, usex_position_var
instead.y_position
- (Optional) The horizontal portion of the image you want to keep when applying aspect ratio cropping. If usingallow_expansion
, this setting defines the horizontal position of the image on the new expanded image canvas. If setting a variable for this argument, usey_position_var
instead.
Background color
This transformation supports this argument:
background_color
- (Optional) Places a transparent image on a set background color.color
- (Optional) The hexadecimal CSS color value for the background. If setting a variable for this argument, usecolor_var
instead.
Blur
This transformation supports these arguments:
blur
- (Optional) Applies a Gaussian blur.sigma
- (Optional) The number of pixels by which to scatter the original pixel to create the blur effect. Resulting images may be larger than the original as some pixels may scatter outside the image's original dimensions. If setting a variable for this argument, usesigma_var
instead.
Chroma key
This transformation supports these arguments:
chroma_key
- (Optional) Changes any color in an image within the specified volume of the HSL colorspace to transparent or semitransparent. This transformation applies a 'green screen' technique commonly used to isolate and remove background colors.hue
- (Optional) The hue to remove. Enter the degrees of rotation (between 0 and 360) around the color wheel. By defaultchroma_key
removes a green hue which is at 120 degrees on the color wheel. If setting a variable for this argument, usehue_var
instead.hue_feather
- (Optional) How much additional hue to make semi-transparent beyond thehue_tolerance
. The default is0.083
which applies semi-transparency to hues 30 degrees around the Hue Tolerance. If setting a variable for this argument, usehue_feather_var
instead.hue_tolerance
- (Optional) How close a color's hue needs to be to the selected hue for it to be changed to fully transparent. If you enter the maximum value of1.0
the entire image is made transparent. The default is approximately0.083
or 8.3% of the color wheel. This value corresponds to 30 degrees around the specified hue. If setting a variable for this argument, usehue_tolerance_var
instead.lightness_feather
- (Optional) How much additional lightness to make semi-transparent beyond thelightness_tolerance
. The default value of 0.1 corresponds to 10% away from the tolerated lightness towards full black or full white. If setting a variable for this argument, uselightness_feather_var
instead.lightness_tolerance
- (Optional) How much of the lightest part and darkest part of a color to preserve. You can space this value out from the middle (for example, 0.5 lightness or full color) to help preserve the splash lighting impact in the image. You can define how close the color needs to be to the full color to remove it from your image. The default value of0.75
means that a color must be within 75% of the full color to full white or full black for full removal. If setting a variable for this argument, uselightness_tolerance_var
instead.saturation_feather
- (Optional) How much additional saturation to make semi-transparent beyond the saturation tolerance. The default is0.1
which applies semi-transparency to hues 10% below thesaturation_tolerance
. If setting a variable for this argument, usesaturation_feather_var
instead.saturation_tolerance
- (Optional) How close a color's saturation needs to be to full saturation for it to be changed to fully transparent. For example, you can define how green the color needs to be to remove it from your image. The default value of0.75
means that a color must be within 75% of full saturation in order to be made fully transparent. If setting a variable for this argument, usesaturation_tolerance_var
instead.
Composite
This transformation supports these arguments:
composite
- (Optional) Applies another image to the source image, either as an overlay or an underlay. The image underneath is visible in areas that are beyond the edges of the top image or that are less than 100% opaque. A common use of the overlay composite is to add a watermark.image
- (Required) The image type, which is one ofbox_image
,circle_image
,text_image
, orurl_image
. See Image types for supported subarguments.
gravity
- (Optional) The placement of theimage
relative to the source image. The available values include eight cardinal directions (North
,South
,East
,West
,NorthEast
,NorthWest
,SouthEast
,SouthWest
) andCenter
by default. If setting a variable for this argument, usegravity_var
instead.
placement
- (Optional) The placement of the applied image either on top of or underneath the base image. Watermarks are usually applied on top. Backgrounds are usually applied underneath. If setting a variable for this argument, useplacement_var
instead.
scale
- (Optional) A multiplier to resize the applied image relative to the source image while preserving the aspect ratio (1 by default). Set thescale_dimension
to calculate thescale
from the source image's width or height. If setting a variable for this argument, usescale_var
instead.
scale_dimension
- (Optional) The dimension, eitherwidth
orheight
, of the source image to scale. If setting a variable for this argument, usescale_dimension_var
instead.
x_position
- (Optional) The x-axis position of the image to apply. If setting a variable for this argument, usex_position_var
instead.
*y_position
- (Optional) The y-axis position of the image to apply. If setting a variable for this argument, usey_position_var
instead.
Compound
This transformation supports this argument:
compound
- (Optional) Groups together transformations into an ordered set. Used to represent a sequence of transformations as a single transformation.
Contrast
This transformation supports these arguments:
contrast
- (Optional) Adjusts contrast and brightness of an image.brightness
- (Optional) The brightness of the image. Positive values increase brightness and negative values decrease brightness. A value of1
produces a white image. A value of-1
produces a black image. The default value is0
, which leaves the image unchanged. The acceptable value range is-1.0
to1.0
. Values outside of the acceptable range clamp to this range. If setting a variable for this argument, usebrightness_var
instead.contrast
- (Optional) The contrast of the image. Expressed as a range from-1
to1
. Positive values increase contrast, negative values decrease contrast, while0
leaves the image unchanged. Values outside of the-1
to1
range clamp to this range. If setting a variable for this argument, usecontrast_var
instead.
Crop
This transformation supports these arguments:
crop
- (Optional) Crops an image.allow_expansion
- (Optional) If cropping an area outside of the existing canvas, expands the image canvas. If setting a variable for this argument, useallow_expansion_var
instead.gravity
- (Optional) The placement of thecrop
relative to the source image. The available values include eight cardinal directions (North
,South
,East
,West
,NorthEast
,NorthWest
,SouthEast
,SouthWest
) andCenter
by default. If setting a variable for this argument, usegravity_var
instead.height
- (Optional) The number of pixels to crop along the y-axis. If setting a variable for this argument, useheight_var
instead.width
- (Optional) The number of pixels to crop along the x-axis. If setting a variable for this argument, usewidth_var
instead.x_position
- (Optional) The x-axis position to crop from. If setting a variable for this argument, usex_position_var
instead.y_position
- (Optional) The y-axis position to crop from. If setting a variable for this argument, usey_position_var
instead.
Face crop
This transformation supports these arguments:
face_crop
- (Optional) Applies a method to detect faces in the source image and applies the rectangular crop on either thebiggest
face orall
of the faces detected. Image and Video Manager tries to preserve faces in the image instead of using specified crop coordinates.algorithm
- (Optional) Specifies the type of algorithm used to detect faces in the image:cascade
(default) for the cascade classifier algorithm, ordnn
for the deep neural network algorithm. If setting a variable for this argument, usealgorithm_var
instead.confidence
- (Optional) Withalgorithm
set todnn
, the minimum confidence needed to detect faces in the image. Values range from0
to1
for increased confidence, and possibly fewer faces detected. If setting a variable for this argument, useconfidence_var
instead.fail_gravity
- (Optional) Controls placement of the crop if no faces are detected in the image. Directions are relative to the edges of the image being transformed. The available values represent the eight cardinal directions (North
,South
,East
,West
,NorthEast
,NorthWest
,SouthEast
,SouthWest
) andCenter
by default. If setting a variable for this argument, usefail_gravity_var
instead.focus
- (Optional) The focus of the crop rectangle, which is either aroundbiggestFace
orallFaces
. This isall
by default. If setting a variable for this argument, usefocus_var
instead.gravity
- (Optional) The placement of the crop relative to the faces, plus padding. The available values represent the eight cardinal directions (North
,South
,East
,West
,NorthEast
,NorthWest
,SouthEast
,SouthWest
) andCenter
by default. If setting a variable for this argument, usegravity_var
instead.
height
- (Optional) The height of the output image in pixels relative to the specifiedstyle
value. If setting a variable for this argument, useheight_var
instead.padding
- (Optional) The padding ratio based on the dimensions of the biggest face detected, This is0.5
by default. Larger values increase padding. If setting a variable for this argument, usepadding_var
instead.style
- (Optional) How to crop, or scale a crop area, for the faces detected in the source image. This iszoom
by default. The output image is resized to the specifiedwidth
andheight
values. A value ofcrop
places a raw crop around the faces relative to the specifiedgravity
value. A value offill
scales the crop area to include as much of the image and faces as possible, relative to the specifiedwidth
andheight
values. A value ofzoom
scales the crop area as small as possible to fit the faces, relative to the specifiedwidth
andheight
values. If setting a variable for this argument, usestyle_var
instead.width
- (Optional) The width of the output image in pixels relative to the specifiedstyle
value. If setting a variable for this argument, usewidth_var
instead.
Feature crop
This transformation supports these arguments:
feature_crop
- (Optional) Identifies prominent features of the source image, then crops around as many of these as possible relative to the specifiedwidth
andheight
values.fail_gravity
- (Optional) The placement of the crop if Image and Video Manager does not detect any features in the image. Directions are relative to the edges of the image being transformed. The available values represent the eight cardinal directions (North
,South
,East
,West
,NorthEast
,NorthWest
,SouthEast
,SouthWest
) andCenter
by default. If setting a variable for this argument, usefail_gravity_var
instead.feature_radius
- (Optional) The size in pixels of the important features to search for. If identified, two features never appear closer together than this value which is8.0
by default. If setting a variable for this argument, usefeature_radius_var
instead.gravity
- (Optional) The placement of the crop relative to the region of interest plus padding. The available values represent the eight cardinal directions (North
,South
,East
,West
,NorthEast
,NorthWest
,SouthEast
,SouthWest
) andCenter
by default. If setting a variable for this argument, usegravity_var
instead.height
- (Optional) The height in pixels of the output image relative to the specifiedstyle
value. If setting a variable for this argument, useheight_var
instead.max_features
- (Optional) The maximum number of features to identify as important features. This maximum number of features is32
by default. The strongest features are always chosen. If setting a variable for this argument, usemax_features_var
instead.min_feature_quality
- (Optional) The minimum quality level of the feature identified. To be considered important, the feature needs to surpass this value. Image and Video Manager measures quality on a scale from0
(lowest) to1
(highest). This is0.1
by default. If setting a variable for this argument, usemin_feature_quality_var
instead.padding
- (Optional) Adds space around the region of interest. The amount of padding added is directly related to the size of the bounding box of the selected features. Specifically, the region of interest is expanded in all directions by the largest dimension of the bounding box of the selected features multiplied by this value. If setting a variable for this argument, usepadding_var
instead.style
- (Optional) Specifies how to crop or scale a crop area for the features identified in the source image. This isfill
by default. The output image resizes to the specifiedwidth
andheight
values. A value ofcrop
performs a raw crop around the features relative to the specifiedgravity
value. A value offill
scales the crop area to include as much of the image and features as possible, relative to the specifiedwidth
andheight
values. A value ofzoom
scales the crop area as small as possible to fit the features, relative to the specifiedwidth
andheight
values. If setting a variable for this argument, usestyle_var
instead.width
- (Optional) The width in pixels of the output image relative to the specifiedstyle
value. If setting a variable for this argument, usewidth_var
instead.
Fit and fill
This transformation supports these arguments:
fit_and_fill
- (Optional) Resizes an image to fit within a specific size box and then uses a fill of that same image to cover any transparent space at the edges. By default, the fill image has a Blur transformation with a sigma value of8
applied. You can use thefill_transformation
argument to customize the transformation.fill_transformation
- Used to customize the sigma value for the fill image.height
- (Optional) The height value of the resized image. If setting a variable for this argument, useheight_var
instead.width
- (Optional) The width value of the resized image. If setting a variable for this argument, usewidth_var
instead.
Goop
This transformation supports these arguments:
goop
- (Optional) Distorts an image by randomly repositioning a set of control points along a specified grid. The transformed image appears goopy. Adjust the density of the grid and the degree of randomity. You can use this transformation to create watermarks for use in security.chaos
- (Optional) The greatest distance control points may move from their original position. A value of1.0
shifts control points over as far as the next one in the original grid. A value of0.0
leaves the image unchanged. Values under0.5
work better for subtle distortions, otherwise control points may pass each other and cause a twisting effect. If setting a variable for this argument, usechaos_var
instead.density
- (Optional) The density of control points used to distort the image. The largest dimension of the input image is divided up to fit this number of control points. A grid of points is extended on the smaller dimension such that each row and column of control points is equidistant from each adjacent row or column. This parameter strongly affects transformation performance. Be careful choosing values above the default if you expect to transform medium to large sized images. If setting a variable for this argument, usedensity_var
instead.power
- (Optional) By default, the distortion algorithm relies on inverse squares to calculate distance but this allows you to change the exponent. You shouldn't need to vary the default value of2.0
. If setting a variable for this argument, usepower_var
instead.seed
- (Optional) Your own seed value as an alternative to the default, which is subject to variability. This allows for reproducible and deterministic distortions. If all parameters are kept equal and a constant seed is used,goop
distorts an input image consistently over many transformations. By default, this value is set to the current epoch time measured in milliseconds, which provides inconsistent transformation output. If setting a variable for this argument, useseed_var
instead.
Grayscale
This transformation supports these arguments:
grayscale
- (Optional) Restricts image color to shades of gray only.type
- (Optional) The algorithm used to transform colors to grays. The available types areBrightness
,Lightness
,Rec601
, or the defaultRec709
. If setting a variable for this argument, usetype_var
instead.
HSL (Hue/Saturation/Lightness)
This transformation supports these arguments:
hsl
- (Optional) The hue, saturation, and lightness (HSL) of an image. Hue is the number of degrees of rotation around the color wheel. Saturation is a multiplier to increase or decrease color saturation. Lightness is a multiplier to increase or decrease the lightness of an image. Other transformations can also affect color, such asgrayscale
andmax_colors
. If you're using more than one of these transformations, consider the order of application for the desired results.hue
- (Optional) The number of degrees to rotate colors around the color wheel. The default is0
. If setting a variable for this argument, usehue_var
instead.lightness
- (Optional) A multiplier to adjust the lightness of colors in the image. Note that lightness is distinct from brightness. For example, reducing the lightness of a light green might give you a lime green whereas reducing the brightness of a light green might give you a darker shade of the same green. Values less than1.0
decrease the lightness of colors in the image. Values greater than1.0
increase the lightness of colors in the image. If setting a variable for this argument, uselightness_var
instead.saturation
- (Optional) A multiplier to adjust the saturation of colors in the image. Values less than1.0
decrease saturation and values greater than1.0
increase the saturation. A value of0.0
removes all color from the image. If setting a variable for this argument, usesaturation_var
instead.
HSV (Hue/Saturation/Value)
This transformation supports these arguments:
hsv
- (Optional) The hue, saturation, and value (HSV) of an image.hsv
is likehsl
exceptlightness
is replaced withvalue
. To illustrate the difference, if you reduce thelightness
of a light green (almost white), the color becomes a vibrant green, but if you reduce thevalue
, the color becomes darker, close to gray. This happens because the original image color is very close to white.hue
- (Optional) The number of degrees to rotate colors around the color wheel. This is0.0
by default. If setting a variable for this argument, usehue_var
instead.saturation
- (Optional) A multiplier to adjust the saturation of colors in the image. Values less than1.0
decrease saturation and values greater than1.0
increase the saturation. A value of0.0
removes all color from the image. If setting a variable for this argument, usesaturation_var
instead.value
- (Optional) A multiplier to adjust the lightness or darkness of the image's base color. Values less than1.0
decrease the base colors in the image, making them appear darker. Values greater than1.0
increase the base colors in the image, making them appear lighter. If setting a variable for this argument, usevalue_var
instead.
If dimension
This transformation supports these arguments:
if_dimension
- (Optional) Chooses a transformation depending on the dimensions of the source image.default
- (Optional) A no-op transformation, by default.dimension
- (Optional) The dimension to use to select the transformation, eitherheight
,width
, orboth
. If setting a variable for this argument, usedimension_var
instead.equal
- (Optional) The transformation is performed only if the source image's dimension is equal to the value listed.greater_than
- (Optional) The transformation is performed if the source image's dimension is greater than the value listed.less_than
- (Optional) The transformation is performed if the source image's dimension is less than the value listed.value
- (Optional) The value against which to compare the source image dimension. For example, if the image dimension is less than the value, theless_than
transformation is applied. If setting a variable for this argument, usevalue_var
instead.
If orientation
This transformation supports these arguments:
if_orientation
- (Optional) Chooses a transformation depending on the orientation of the source image.default
- (Optional) A no-op transformation, by default.landscape
- (Optional) The transformation is performed if the source image uses landscape orientation.portrait
- (Optional) The transformation is performed if the source image uses portrait orientation.square
- (Optional) The transformation is performed if the source image uses a square orientation.
IMQuery
This transformation supports these arguments:
im_query
- (Optional) Applies artistic transformations on a per-image basis by specifying transformations with a query string appended to the image URL.allowed_transformations
- (Required) Specifies the transformations you can apply with the query string parameter.append
,blur
, andcrop
are supported.query_var
- (Required) The variable to use.
Max colors
This transformation supports these arguments:
max_colors
- (Optional) Sets the maximum number of colors in the image’s palette. Reducing the number of colors in an image can help to reduce file size.colors
- (Optional) The value representing the maximum number of colors to use in the source image. If setting a variable for this argument, usecolors_var
instead.
Mirror
This transformation supports these arguments:
mirror
- (Optional) Flips an image horizontally, vertically, or both.horizontal
- (Optional) Flips the image horizontally. If setting a variable for this argument, usehorizontal_var
instead.vertical
- (Optional) Flips the image vertically. If setting a variable for this argument, usevertical_var
instead.
Mono hue
This transformation supports these arguments:
mono_hue
- (Optional) Allows you to set all hues in an image to a single specified hue of your choosing. Mono Hue maintains the original color’s lightness and saturation but sets the hue to that of the specified value. This has the effect of making the image various shades of the specified hue.hue
- (Optional) The hue which is indicated by the degree of rotation (between 0 and 360) around the color wheel. By default, Mono Hue applies a red hue, which is0.0
on the color wheel. If setting a variable for this argument, usehue_var
instead.
Opacity
This transformation supports this argument:
opacity
- (Optional) The level of transparency of an image represented as an alpha value on a scale of0
to1
. An image with no transparency is opaque. Values below1
decrease opacity with0
being completely transparent. For images with some transparency, values above1
increase the opacity of the transparent portions. If setting a variable for this argument, useopacity_var
instead.
Region of interest crop
This transformation supports these arguments:
region_of_interest_crop
- (Optional) Crops around a specified area of interest (region) relative to the specifiedwidth
andheight
values.region_of_interest
- (Required) The bounding shape of the important features to search for, which is one ofcircle_shape
,point_shape
,polygon_shape
,rectangle_shape
, orunion_shape
. See Shape types.gravity
- (Optional) The placement of the crop area relative to the specified area of interest. The available values represent the eight cardinal directions (North
,South
,East
,West
,NorthEast
,NorthWest
,SouthEast
,SouthWest
) andCenter
by default. If setting a variable for this argument, usegravity_var
instead.height
- (Optional) The height in pixels of the output image relative to the specifiedstyle
value. If setting a variable for this argument, useheight_var
instead.style
- (Optional) Specifies how to crop, or scale a crop area, for the specified area of interest in the source image. The output image resizes to the specifiedwidth
andheight
values. A value ofcrop
places raw crop around the point of interest, relative to the specifiedgravity
value. A value offill
scales the crop area to include as much of the image and point of interest as possible, relative to the specifiedwidth
andheight
values. A value ofzoom
(the default) scales the crop area as small as possible to fit the point of interest, relative to the specifiedwidth
andheight
values. If setting a variable for this argument, usestyle_var
instead.width
- (Optional) The width in pixels of the output image relative to the specifiedstyle
value. If setting a variable for this argument, usewidth_var
instead.
Relative crop
This transformation supports these arguments:
relative_crop
- (Optional) Shrinks or expands an image relative to the image's specified dimensions. Image and Video Manager fills the expanded areas with transparency. Positive values shrink the side, while negative values expand it.east
- (Optional) The number of pixels to shrink or expand the right side of the image. If setting a variable for this argument, useeast_var
instead.north
- (Optional) The number of pixels to shrink or expand the top side of the image. If setting a variable for this argument, usenorth_var
instead.south
- (Optional) The number of pixels to shrink or expand the bottom side of the image. If setting a variable for this argument, usesouth_var
instead.west
- (Optional) The number of pixels to shrink or expand the left side of the image. If setting a variable for this argument, usewest_var
instead.
Remove color
This transformation supports these arguments:
remove_color
- (Optional) Removes a specified color from an image and replaces it with transparent pixels. This transformation is ideal for removing solid background colors from product images photographed on clean, consistent backgrounds without any shadows.color
- (Optional) The hexadecimal CSS color value to remove. If setting a variable for this argument, usecolor_var
.feather
- (Optional) Used to minimize any hard edges and to make the color removal more gradual in appearance. This option allows you to extend the color removal beyond the specifiedtolerance
. The pixels in this extended tolerance become semi-transparent which creates a softer edge. The first time there’s a real-time request for an image, this option may result in a slow transformation time, but subsequent requests aren't impacted as the transformed image is served directly from the cache. If setting a variable for this argument, usefeather_var
instead.tolerance
- (Optional) Defines how close the color needs to be to the selected color before it's changed to fully transparent. Set to0.0
to remove only the exact color specified. If setting a variable for this argument, usetolerance_var
instead.
Resize
This transformation supports these arguments:
resize
- (Optional) Resizes an image to a particular, absolute dimension. If you don't enterwidth
orheight
, this transformation uses thefit
aspect preservation mode, which selects a value for the missing dimension that preserves the image's aspect.aspect
- (Optional) Preserves the aspect ratio. Selectfit
to make the image fit entirely within the selected width and height. When usingfit
, the resulting image has the largest possible size for the specified dimensions. Selectfill
to size the image so it both completely fills the dimensions and has the smallest possible file size. Otherwiseignore
changes the original aspect ratio to fit within an arbitrarily shaped rectangle. If setting a variable for this argument, useaspect_var
instead.height
- (Optional) The height to which to resize the source image. Must be set if width is not specified. If setting a variable for this argument, useheight_var
instead.type
- (Optional) The type of constraints on the image resize. Selectnormal
to resize in all cases, either increasing or decreasing the dimensions. Selectdownsize
to ignore this transformation if the result would be larger than the original. Selectupsize
to ignore this transformation if the result would be smaller. If setting a variable for this argument, usetype_var
instead.width
- (Optional) The width to which to resize the source image. Must be set if height is not specified. If setting a variable for this argument, usewidth_var
instead.
Rotate
This transformation supports these arguments:
rotate
- (Optional) Rotates the image around its center by indicating the degrees of rotation.degrees
- (Optional) The value by which to rotate the image. Positive values rotate clockwise, while negative values rotate counter-clockwise. If setting a variable for this argument, usedegrees_var
instead.
Scale
This transformation supports these arguments:
scale
- (Optional) Changes the derivative image's dimensions relative to the original image’s.height
- (Optional) The scaling factor for the input height that is used to determine the output height of the image. Values between0
and1
decrease image height. Values greater than 1 increase the image height. A value of1
leaves the height unchanged. Image dimensions need to be non-zero positive numbers. If setting a variable for this argument, useheight_var
instead.width
- (Optional) The scaling factor for the input width that is used to determine the output width of the image. Values between0
and1
decrease image width. Values greater than 1 increase the image width. A value of1
leaves the width unchanged. Image dimensions need to be non-zero positive numbers. If setting a variable for this argument, usewidth_var
instead.
Shear
This transformation supports these arguments:
shear
- (Optional) Slants an image into a parallelogram as a percent of the starting dimension in decimal format. You need to specify at least one axis property. Transparent pixels fill empty areas around the sheared image as needed, so it's often useful to use abackground_color
transformation for these areas.x_shear
- (Optional) The amount to shear along the x-axis, measured in multiples of the image's width. Must be set ify_shear
isn't specified. If setting a variable for this argument, usex_shear_var
instead.y_shear
- (Optional) The amount to shear along the y-axis, measured in multiples of the image's height. Must be set ifx_shear
isn't specified. If setting a variable for this argument, usey_shear_var
instead.
Trim
This transformation supports these arguments:
trim
- (Optional) Automatically crops the background uniformly from the edges of an image.fuzz
- (Optional) The fuzz tolerance of the trim expressed as a value between0
and1
. This determines the acceptable amount of background variation before trimming stops. If setting a variable for this argument, usefuzz_var
instead.padding
- (Optional) The amount of padding in pixels to add to the trimmed image. If setting a variable for this argument, usepadding_var
instead.
Unsharp mask
This transformation supports these arguments:
unsharp_mask
- (Optional) Emphasizes edges and details in source images without distorting the colors. Although this effect is often referred to as sharpening an image, it actually creates a blurred, inverted copy of the image known as an unsharp mask. Image and Video Manager combines the unsharp mask with the source image to create an image that is perceived by the human eye as clearer.gain
- (Optional) How much emphasis the filter applies to details. Higher values increase apparent sharpness of details. If setting a variable for this argument, usegain_var
instead.sigma
- (Optional) The standard deviation of the Gaussian distribution used in the unsharp mask, measured in pixels. This is1.0
by default. High values emphasize large details and low values emphasize small details. If setting a variable for this argument, usesigma_var
instead.threshold
- (Optional) The minimum change required to include a detail in the filter. Higher values discard more changes. If setting a variable for this argument, usethreshold_var
instead.
Image types
You can, and in some cases may be required to, specify these image types for certain transformations:
box_image
- (Optional) A rectangular box with a specified fill color and applied transformation.color
- (Optional) The fill color of the box, not the edge of the box. The API supports hexadecimal representation and CSS hexadecimal color values. If setting a variable for this argument, usecolor_var
instead.height
- (Optional) The height of the box in pixels. If setting a variable for this argument, useheight_var
instead.transformation
- (Optional) The transformation to apply to the box.width
- (Optional) The width of the box in pixels. If setting a variable for this argument, usewidth_var
instead.
circle_image
- (Optional) A rectangular box, with a specified color and applied transformation.color
- (Optional) The fill color of the circle. The API supports hexadecimal representation and CSS hexadecimal color values. If setting a variable for this argument, usecolor_var
instead.diameter
- (Optional) The diameter of the circle. The diameter will be the width and the height of the image in pixels. If setting a variable for this argument, usediameter_var
instead.transformation
- (Optional) The transformation to apply to the circle.width
- (Optional) The width of the box in pixels. If setting a variable for this argument, usewidth_var
instead.
text_image
- (Optional) A snippet of text. Defines font family and size, fill color, as well as outline stroke width and color.fill
- (Optional) The main fill color of the text. If setting a variable for this argument, usefill_var
instead.size
- (Optional) The size in pixels to render the text. If setting a variable for this argument, usesize_var
instead.stroke
- (Optional) The color for the outline of the text. If setting a variable for this argument, usestroke_var
instead.stroke_size
- (Optional) The thickness in points for the outline of the text. If setting a variable for this argument, usestroke_size_var
instead.text
- (Optional) The line of text to render. If setting a variable for this argument, usetext_var
instead.transformation
- (Optional) The transformation to apply to the text.typeface
- (Optional) The font family to apply to the text image. This may be a URL to a TrueType or WOFF (v1) typeface, or a string that refers to one of the standard built-in browser fonts. If setting a variable for this argument, usetypeface_var
instead.
url_image
- (Optional) An image loaded from a URL.transformation
- (Optional) The transformation to apply to the image.url
- (Optional) The URL of the image. If setting a variable for this argument, useurl_var
instead.
Example
Here’s an example of a text image within an append transformation.
transformations {
append {
gravity = "Center"
gravity_priority = "horizontal"
image {
text_image {
fill = "#000000"
size = 72
stroke = "#FFFFFF"
stroke_size = 0
text = "test"
}
}
Shape types
You can specify these shape types for certain transformations:
circle_shape
- (Optional) Defines a circle with a specifiedradius
from itscenter
point.center
- (Required) Defines coordinates for a single point, to help define polygons and rectangles. Each point may be an object withx
andy
members, or a two-element array.radius
- (Optional) The radius of the circle measured in pixels. If setting a variable for this argument, useradius_var
instead.
point_shape
- (Optional) Defines coordinates for a single point to help define polygons and rectangles. Each point may be an object with x and y members, or a two-element array.x
- (Optional) The horizontal position of the point, measured in pixels. If setting a variable for this argument, usex_var
instead.y
- (Optional) The vertical position of the point, measured in pixels. If setting a variable for this argument, usey_var
instead.
polygon_shape
- (Optional) Defines a polygon from a series of connected points.points
- (Required) A series ofpoint_shape
objects. The last and first points connect to close the shape automatically.
rectangle_shape
- (Optional) Defines a rectangle'swidth
andheight
relative to ananchor
point at the top left corner.anchor
- (Required) The anchor point for the rectangle.height
- (Optional) Extends the rectangle down from theanchor
point. If setting a variable for this argument, useheight_var
instead.width
- (Optional) Extends the rectangle right from theanchor
point. If setting a variable for this argument, usewidth_var
instead.
union_shape
- (Optional) Identifies a shape based on a combination of other shapes. You can use an object to represent a union or an array of shapes that describe it.shapes
- (Required) The set of shapes to combine to form the union.
Example
Here’s an example of a rectangle shape within a region of interest crop.
transformations {
region_of_interest_crop {
gravity = "Center"
height = 8
region_of_interest {
rectangle_shape {
anchor {
x = 4
y = 5
}
height = 9
width = 8
}
}
style = "fill"
width = 7
}
}
Updated 10 months ago