compresso
Ouvrir l’app

Questions fréquentes

Réponses directes sur Compresso, l’optimiseur d’images gratuit dans le navigateur et la bibliothèque JavaScript de 3,6 Ko.

Comment compresser une image dans le navigateur avant de l’envoyer ?
Lisez le fichier depuis un input, passez-le à compress(file, { quality, maxWidth }), puis envoyez result.file. Tout s’exécute côté client — l’image ne quitte jamais le navigateur tant que vous ne l’envoyez pas. Voir le démarrage rapide dans la documentation.
Comment convertir une image HEIC en JPEG ou WebP en JavaScript ?
Passez le fichier .heic ou .heif directement à compress(file, { format: "auto" }). Compresso décode le HEIC nativement sur Safari et via un décodeur WASM chargé à la demande ailleurs, puis produit un format web standard.
Pourquoi mon image compressée est-elle devenue plus grande que l’originale ?
Avec la plupart des outils, réencoder une source déjà efficace (comme un HEIC d’iPhone) en JPEG peut l’enflammer. Compresso garantit que cela n’arrive jamais en sortie avec perte : la taille est plafonnée à la source et, sans WebP/AVIF, la résolution est réduite plutôt que le fichier grossi.
Faut-il un serveur ou un backend ?
Non. Compresso est 100 % côté client (Canvas API). Pas de serveurs, pas de clés API, aucune image envoyée à un tiers.
Est-ce compatible avec React, Vue et Next.js ?
Oui — agnostique au framework. Importez compress depuis compresso.js dans n’importe quel flux d’envoi. Des exemples React, Vue, Svelte, Angular et Next.js sont fournis.
Comment compresser plusieurs images en parallèle sans bloquer l’interface ?
Importez createPool depuis compresso.js/pool — un pool de Web Workers avec la même API, repli automatique sur le thread principal si les Workers ne sont pas disponibles.
Mon site a une CSP stricte — pourquoi l’entrée HEIC échoue-t-elle ?
Il manque généralement wasm-unsafe-eval dans script-src (le décodeur HEIC est en WASM) ou worker-src self avec compresso.js/pool. Voir la section CSP de la documentation.

GitHub · npm