compresso
Apri l’app

Domande frequenti

Risposte dirette su Compresso, l’ottimizzatore gratuito nel browser e la libreria JavaScript da 3,6 KB.

Come comprimo un’immagine nel browser prima di caricarla?
Leggi il file da un input, passalo a compress(file, { quality, maxWidth }) e carica result.file. Tutto avviene lato client — l’immagine non lascia il browser finché non la carichi tu. Vedi l’avvio rapido nella documentazione.
Come converto un’immagine HEIC in JPEG o WebP in JavaScript?
Passa il file .heic o .heif direttamente a compress(file, { format: "auto" }). Compresso decodifica HEIC nativamente su Safari e tramite un decoder WASM lazy altrove, poi restituisce un formato web standard.
Perché la mia immagine compressa è diventata più grande dell’originale?
Con la maggior parte degli strumenti, ricodificare una sorgente già efficiente (come un HEIC di iPhone) in JPEG può gonfiarla. Compresso garantisce che non accada mai in uscita lossy: la dimensione è limitata alla sorgente e, senza WebP/AVIF, riduce la risoluzione invece di aumentare il file.
Serve un server o un backend?
No. Compresso è 100% lato client (Canvas API). Nessun server, nessuna chiave API, nessuna immagine caricata a terzi.
Funziona con React, Vue e Next.js?
Sì — è agnostico rispetto al framework. Importa compress da compresso.js in qualsiasi flusso di upload. Esempi per React, Vue, Svelte, Angular e Next.js sono nel repository.
Come comprimo molte immagini in parallelo senza bloccare l’interfaccia?
Importa createPool da compresso.js/pool — un pool di Web Worker con la stessa API, con fallback automatico al main thread dove i Worker non sono disponibili.
Il mio sito ha una CSP rigida — perché l’input HEIC fallisce?
Di solito manca wasm-unsafe-eval in script-src (il decoder HEIC è WASM) o worker-src self con compresso.js/pool. Vedi la sezione CSP nella documentazione.

GitHub · npm