Contentful
Unpic can transform images with Contentful using the contentful
provider. It can be
used with Unpic framework components, or you can use the base unpic
libary to generate
image URLs directly.
You can import the contentful
provider from the unpic
package using a subpath import:
import { transform } from 'unpic/providers/contentful';
If using an Unpic component, you can optionally pass custom operations and options to the
component using an object with a contentful
key. This is lets you use extra features supported
by Contentful, or set custom configuration options.
This example uses @unpic/astro
, but the same applies to any Unpic component:
---
import { Image } from '@unpic/astro';
---
<Image
src="image.jpg"
width={800}
height={600}
options={{
"contentful": {
// contentful options here
}
}}
operations={{
"contentful": {
// contentful operations here
}
}}
/>
In supported frameworks you can also import the base component and pass the transformer to it directly. This lets you create a custom component that doesn’t need to include and other transformer code.
---
import { Image } from '@unpic/astro/base';
import { transform } from 'unpic/providers/contentful';
---
<Image
src="image.jpg"
width={800}
height={600}
transformer={transformer}
/>
Types
The contentful
provider supports the following arguments:
Options
The contentful
provider does not support any extra configuration options.
Operations
w
Type: number
Specifies the width of the image in pixels. Maximum allowed value is 4000 pixels.
h
Type: number
Specifies the height of the image in pixels. Maximum allowed value is 4000 pixels.
fit
Type: FitType
Defines how the image fits into the specified dimensions. Possible values:
pad
: Adds padding if necessary to fit the dimensions.fill
: Crops the image to fit exactly in the specified dimensions.scale
: Resizes the image while changing the aspect ratio.crop
: Crops a portion of the image to fit the dimensions.thumb
: Creates a thumbnail of the image.
f
Type: FocusArea
Defines the focal area for cropping or padding.
Works with fit
values like crop
, pad
, etc.
Possible values:
center
,top
,right
,left
,bottom
top_right
,top_left
,bottom_right
,bottom_left
face
: For the largest detected face.faces
: For all detected faces.
bg
Type: string
Sets the background color when padding is applied or with rounded corners. It accepts RGB or hex values.
q
Type: number
Adjusts the image quality as a percentage from 1 to 100. Ignored for 8-bit PNG images.
r
Type: number | "max"
Rounds the corners of the image. You can specify the corner radius in pixels or use “max” to create a full circle/ellipse.
fm
Type: ImageFormat
Specifies the output format for the image. Possible values:
jpg
png
webp
avif
fl
Type: "progressive" | "lossless"
Sets the compression method for the image. Possible values:
progressive
: For progressive JPEG images.lossless
: For lossless PNG/WebP images.
width
Type: string | number
height
Type: string | number
format
Type: (string & {}) | ImageFormat
quality
Type: string | number
This page is auto-generated from the contentful
provider types.
See anything wrong or missing? Suggest a change on GitHub.