Skip to content

Presets ​

Named option packs for common delivery targets.

Signature ​

typescript
type CompressionPreset = 'social-media' | 'print' | 'web' | 'thumbnail' | 'email'

function getPresetOptions(preset: CompressionPreset): CompressionOptions
function applyPreset(
  options: CompressionOptions,
  preset: CompressionPreset
): CompressionOptions

Preset table ​

PresetTypical max edgeQualityFormat
web1920~0.78PIXU
social-media1080~0.82PIXU
thumbnail320~0.70PIXU
email800~0.72JPEG
print3000~0.92JPEG

Exact values live in getPresetOptions. User-provided fields in applyPreset override the preset (including quality when set).

Examples ​

typescript
import { compress, getPresetOptions, applyPreset } from '@pantanal/pixu'

// Use a preset as-is
await compress(file, getPresetOptions('web'))

// Merge
await compress(file, applyPreset({ watermark: { text: 'Pixu' } }, 'social-media'))

// Via compress options
await compress(file, { preset: 'thumbnail' })

Released under the MIT License.