Skip to content
Apexify.jsDocs
Apexify.js version v5.4.5

interface export

ImageDistortionOptions

Published interface export ImageDistortionOptions.

apexify.jsCURRENTnode22node24node26
Source: lib-next/types/image.ts (opens in a new tab)

Signature

TypeScript
export interface ImageDistortionOptions {
    type: "perspective" | "warp" | "bulge" | "pinch" | "twirl" | "wave";
    /**
     * Destination quad in top-left, top-right, bottom-right, bottom-left order.
     * Perspective uses a projective homography; warp uses a free bilinear quad.
     */
    points?: Array<{
        x: number;
        y: number;
    }>;
    /**
     * Local free-warp/liquify handles. Each handle drags pixels from `from` to
     * `to` with radius/falloff control. Used by type:"warp".
     */
    controlPoints?: ImageWarpControlPoint[];
    /** General strength multiplier. Negative values reverse radial/twirl effects. */
    intensity?: number;
    /** Effect center in canvas coordinates. Defaults to the image center. */
    centerX?: number;
    centerY?: number;
    /** Effect radius in pixels. Defaults to half of the smaller layer dimension. */
    radius?: number;
    /** Twirl angle in degrees. If omitted, intensity × 180 degrees is used. */
    angle?: number;
    /** Wave displacement amplitudes in pixels. */
    amplitudeX?: number;
    amplitudeY?: number;
    /** Wave lengths in pixels. Values must be > 0 when supplied. */
    wavelengthX?: number;
    wavelengthY?: number;
    /** Wave phase in degrees. */
    phaseX?: number;
    phaseY?: number;
    /** Raster resampling quality. Defaults to bilinear. */
    interpolation?: ImageInterpolationMode;
    /** Sampling behavior outside source bounds. Defaults to transparent. */
    edgeMode?: ImageEdgeMode;
}

Related APIs

No explicit related API metadata.

Next steps