omni-compress - v2.3.10
    Preparing search index...

    Interface CompressorOptions

    interface CompressorOptions {
        type: "image" | "audio" | "video";
        format: string;
        maxSizeMB?: number;
        quality?: number;
        onProgress?: (percent: number) => void;
        originalFileName?: string;
        useWorker?: boolean;
        strict?: boolean;
        maxWidth?: number;
        maxHeight?: number;
        minWidth?: number;
        minHeight?: number;
        width?: number;
        height?: number;
        resize?: "contain" | "cover" | "fill" | "inside" | "outside" | "none";
        position?: string;
        withoutEnlargement?: boolean;
        checkOrientation?: boolean;
        retainExif?: boolean;
        beforeDraw?: (
            canvas: HTMLCanvasElement | OffscreenCanvas,
            ctx: CanvasRenderingContext2D | OffscreenCanvasRenderingContext2D,
        ) => void;
        drew?: (
            canvas: HTMLCanvasElement | OffscreenCanvas,
            ctx: CanvasRenderingContext2D | OffscreenCanvasRenderingContext2D,
        ) => void;
        preserveMetadata?: boolean;
        bitrate?: string;
        channels?: 1 | 2;
        sampleRate?: number;
        videoBitrate?: string;
        fps?: number;
    }
    Index

    Properties

    type: "image" | "audio" | "video"
    format: string
    maxSizeMB?: number
    quality?: number
    onProgress?: (percent: number) => void
    originalFileName?: string
    useWorker?: boolean

    Explicitly force Web Worker usage (true) or Main Thread usage (false).

    strict?: boolean

    If the compressed file is larger than the original, return the original. Default: false.

    maxWidth?: number
    maxHeight?: number
    minWidth?: number
    minHeight?: number
    width?: number
    height?: number
    resize?: "contain" | "cover" | "fill" | "inside" | "outside" | "none"
    position?: string

    Anchor point for letterboxing (contain) or cropping (cover). Default: 'center'. Values: 'center', 'top', 'right', 'bottom', 'left', 'top-left', 'top-right', 'bottom-left', 'bottom-right'. Also accepts compass aliases: 'north', 'east', 'south', 'west', etc.

    withoutEnlargement?: boolean

    When true, the image is never scaled above its original dimensions, even when the target box is larger. Disables minWidth/minHeight upscaling.

    checkOrientation?: boolean
    retainExif?: boolean
    beforeDraw?: (
        canvas: HTMLCanvasElement | OffscreenCanvas,
        ctx: CanvasRenderingContext2D | OffscreenCanvasRenderingContext2D,
    ) => void
    drew?: (
        canvas: HTMLCanvasElement | OffscreenCanvas,
        ctx: CanvasRenderingContext2D | OffscreenCanvasRenderingContext2D,
    ) => void
    preserveMetadata?: boolean
    bitrate?: string
    channels?: 1 | 2
    sampleRate?: number
    videoBitrate?: string
    fps?: number