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.