Convertir JXL en ICO

Vous pouvez convertir JXL en ICO gratuitement et sans compte : déposez le fichier ci-dessus et, une ou deux secondes plus tard, le résultat est prêt à télécharger. La conversion se fait dans votre propre navigateur : le fichier n’est donc jamais téléversé. Cela marche sous Windows, macOS et Linux comme sur iPhone et Android, et continue de marcher si vous coupez le réseau.

  • Où cela s’exécute Dans votre navigateur. Le fichier n’est pas téléversé.
  • Avec perte Un peu de détail est échangé contre du poids. ICO ne peut pas tout garder de ce que garde JXL.
  • Limite de taille Jusqu’à 100 Mo par fichier, gratuitement et sans compte.
  • Bon à savoir Réduit à des tailles d’icône ; le détail au-delà de 256 pixels est écarté.

Jusqu’à 100 fichiers à la fois. Les formats mélangés ne posent pas de problème.

Ce que fait réellement le passage de JXL à ICO

A generated landscape with a low sun and three ridges, used to show what JPEG does to continuous tone. Shown as JXL.

JXL7 KB

A generated landscape with a low sun and three ridges, used to show what JPEG does to continuous tone. Shown as ICO.

ICO139 KB19.6× plus gros

Une scène photographique : dégradés doux, bords tendres, un peu de grain. C’est le cas pour lequel ICO est fait, ou justement pas — et les chiffres montrent lequel des deux. Les deux images sont dessinées par le code et encodées par le convertisseur qui tourne sur cette page : les tailles indiquées sont donc notre propre sortie.
A generated badge: a circular gradient on a transparent background with a white bar across it, used to show what each format does with transparency and with hundreds of shades. Shown as JXL.

JXL5 KB

A generated badge: a circular gradient on a transparent background with a white bar across it, used to show what each format does with transparency and with hundreds of shades. Shown as ICO.

ICO7 KB43 % plus gros

Un fond transparent et un dégradé sur la forme. ICO conserve les deux, un seul, ou remplit la transparence d’une couleur fixe — et c’est la différence sur laquelle presque tout le monde trébuche. Les deux images sont dessinées par le code et encodées par le convertisseur qui tourne sur cette page : les tailles indiquées sont donc notre propre sortie.
A generated application window with a sidebar, a table and a bar chart, used to show what JPEG does to flat colour and hard edges. Shown as JXL.

JXL13 KB

A generated application window with a sidebar, a table and a bar chart, used to show what JPEG does to flat colour and hard edges. Shown as ICO.

ICO3 KB5.0× plus petit

Des aplats et des bords francs, comme dans une interface, un schéma ou un logo. Cela se comporte tout autrement que la photo ci-dessus, et c’est bien pourquoi la réponse est : cela dépend de ce qu’il y a dans le fichier. Les deux images sont dessinées par le code et encodées par le convertisseur qui tourne sur cette page : les tailles indiquées sont donc notre propre sortie.

L’ICO contient plusieurs tailles d’une image, et le pipeline les produit

Un fichier .ico n’est pas une image, c’est un répertoire de tailles d’une seule image. Notre convertisseur prend le JXL source, le décode, et le ré-encode en plusieurs tailles d’ICO, par défaut 16, 32 et 48 pixels. Le fichier produit est un véritable ICO multi-tailles, lisible par Windows et macOS comme icône d’application. Pour un asset destiné à un logiciel, c’est la cible.

Le format ICO est ancien (1985), et il reste en usage parce que Windows et macOS le lisent nativement. Pour un site web moderne, le favicon est plutôt un PNG 32 ou un SVG, et l’ICO est tombé en désuétude. Pour un installateur de logiciel, un exécutable, un raccourci, c’est encore la cible. Notre pipeline produit un ICO conforme, avec une table d’icônes correctement déclarée.

Le cap de 256 pixels est appliqué au plus grand côté

Notre encodeur ICO a un cap dur de 256 pixels, appliqué au plus grand côté de l’image. Un JXL 512 est donc ramené à 256 (avec la même proportion, letterboxé). Un JXL 1024 est aussi ramené à 256. Un JXL 128, lui, est conservé à 128. Le code source est explicite sur ce point, et le commentaire qui justifie le cap est sans détour : « un ICO est un format d’icône, pas de visuel de fiche produit ».

Pour un asset qui doit être affiché en grand, c’est une limite. Pour une icône d’application, c’est conforme à l’usage. Si la chaîne en aval exige une icône 512, il faut un outil qui sort du pipeline standard. Le cap est documenté, et c’est explicite dans le code source, et c’est la raison pour laquelle un JXL de grande taille perd en définition après conversion.

Le letterboxing préserve les proportions, sans étirement

Quand une image n’est pas carrée, notre encodeur la letterboxe plutôt que de l’étirer. Un JXL 16/9 devient un ICO avec des bandes vides en haut et en bas, à la taille carrée demandée. Le mécanisme est explicite dans le code source. `square()` calcule `Math.min(edge/width, edge/height)` et centre. Pour un logo qui doit apparaître centré, c’est ce qu’il faut. Pour un visuel qui doit remplir toute la zone, c’est un défaut.

Pour les images qui doivent apparaître étirées (un fond d’icône qui doit couvrir la zone), le pipeline ne le fait pas. Le letterboxing est le comportement par défaut et documenté. Pour un asset d’interface qui doit avoir un fond coloré plein, il faut aplatir la transparence sur un fond avant la conversion, et c’est explicite dans la liste des options offertes pour les sources avec alpha.

L’ICO sera agrandi si la source est plus petite

Si la source JXL est plus petite que la taille ICO demandée, le pipeline agrandit l’image, et c’est explicite dans le code source. Le commentaire qui le dit est sans détour : « la première version de ce commentaire prétendait le contraire, et onze pages l’ont répété ». Le pipeline n’invente pas de pixels, mais il les interpole par un redimensionnement bilinéaire. Le résultat est une icône floue, pas une icône nette.

Pour un JXL 16, demander un ICO 32 donne un ICO 32 visuellement flou. Pour un JXL 8, demander un ICO 48 donne un ICO 48 très flou. C’est explicite, et c’est la raison pour laquelle un asset graphique destiné à être icônifié doit être conçu dès le départ à la taille de sortie. Le pipeline fait ce qu’on lui dit, et c’est à l’utilisateur de demander la bonne taille.

La transparence de l’ICO est préservée

L’ICO supporte un canal alpha, et notre encodeur le porte. Le PNG encapsulé dans l’ICO peut avoir de la transparence, et c’est conservé. Un JXL avec un canal alpha arrive en ICO avec sa transparence, prêt à être posé sur le thème de l’interface. C’est conforme à l’usage moderne des icônes d’application, et c’est explicite dans le code source.

Pour un logo d’entreprise qui doit apparaître détouré sur un fond Windows ou macOS, c’est la sortie correcte. Pour un asset qui doit apparaître sur un fond uni, aplatir la transparence sur ce fond avant la conversion est une bonne idée, parce que le letterboxing ne gère pas le cas d’un fond implicite. L’option de fond est proposée sur les paires où la source peut avoir de l’alpha, et c’est explicite dans le code source.

Pourquoi ICO plutôt que PNG ou WebP pour cette cible

ICO est lisible par Windows et macOS comme icône d’application, ce que PNG et WebP ne sont pas. Pour un installateur de logiciel qui doit embarquer son icône dans l’exécutable, ICO est la cible. Pour un raccourci, ICO est la cible. Pour une icône de barre de tâches, ICO est la cible. Pour un favicon, ICO est ancien et le PNG est plus moderne.

Pour un site web moderne, le favicon est en PNG 32 ou en SVG, et l’ICO est conservé comme fallback pour les navigateurs anciens. Notre pipeline produit un ICO multi-tailles conforme, prêt à être embarqué. Pour un usage web, le PNG suffit. Pour un usage système, l’ICO est la bonne cible.

Métadonnées techniques, toutes perdues

Le JXL source peut porter EXIF, XMP, ICC. Notre pipeline décode en pixels, ré-encode en ICO, et tout ce qui n’est pas pixel disparaît. Le profil colorimétrique est perdu, ce qui pose peu de problème pour un asset graphique destiné à être réinterprété. Les informations d’auteur, de date, de logiciel source sont perdues, ce qui est en général une bonne chose pour un envoi.

Pour un archivage qui doit conserver la trace de la création, c’est un défaut, et il faut un outil qui accepte les métadonnées comme paramètre. Notre pipeline ne le fait pas, parce que le raster n’accepte que `ImageData` et `{ quality }`. C’est cohérent avec les autres cibles raster, et c’est ce qui fait que le fichier produit est léger et propre.

La conversion reste strictement locale

Le JXL source n’est pas uploadé, l’ICO produit n’est jamais transmis. La conversion se fait dans l’onglet, en mémoire, par les encodeurs chargés à la demande. C’est important pour les assets graphiques qui peuvent indiquer une marque, un design en cours, un sigle client. Aucun fichier ne quitte l’appareil, et l’onglet réseau reste vide pendant la conversion.

Les fichiers jusqu’à 100 Mo sont pris en charge, ce qui est très large pour ce format, et l’ensemble du calcul est client pour cette paire. C’est la seule forme sous laquelle la phrase « privé » signifie quelque chose : aucune requête vers l’extérieur pendant que la conversion tourne, et l’assertion se vérifie dans l’onglet réseau des outils de développement.

Comment convertir JXL en ICO

  1. Déposez votre fichier JXL sur cette page, ou cliquez pour en choisir un.
  2. Choisissez ICO comme destination. La conversion se fait dans votre navigateur et le fichier n’est pas téléversé.
  3. Téléchargez le fichier ICO terminé.

JXL et ICO : ce qui change

JXL face à ICO
JXLICO
Nom completJPEG XLIcône Windows
Extension de fichier.jxl.ico
Type de médiaimage/jxlimage/x-icon
CompressionLes deux, selon le réglageSans perte — rien n’est écarté
Première publication20211985
Publié parJoint Photographic Experts GroupMicrosoft
SpécificationISO/IEC 18181
LicenceStandard ouvertPublié, non normalisé
Situation actuelleDe nicheDe niche
Profondeur de bits328
Couleur qu’il peut décrireRVB, niveaux de gris, gamut étenduRVB, palette indexée
Image la plus grande256 px par côté
S’ouvre dans un navigateurCertains navigateursTous les navigateurs
Envisagé à la placeAVIF, WebP, PNGPNG, SVG

Ce qui est perdu

JXL enregistre jusqu’à 32 bits par canal, ICO en garde 8. Cette précision supplémentaire est ce qui encaisse des corrections fortes sans bandes : convertissez après la retouche plutôt qu’avant.

Ce qui est conservé

La transparence est conservée. JXL et ICO enregistrent tous deux une couche alpha : un détourage reste détouré et rien n’est rempli derrière.

Ouvrir le résultat

ICO s’ouvre dans tous les navigateurs actuels. JXL va encore moins loin. Si le fichier part sur une page web ou dans un formulaire, c’est souvent toute la raison de la conversion.

GIMP lit aussi bien JXL que ICO : vous pouvez comparer le résultat à l’original sans second logiciel.

À quoi sert chaque format

Les deux visent des usages différents : JXL l’archivage et la photographie, ICO le web. Cela mérite d’être pesé avant, car ce qui justifie l’un est souvent ce qui rend l’autre malcommode.

JXL est le format de Joint Photographic Experts Group, publié en 2021. L’enregistrement se fait sur 32 bits par canal.

ICO vient de Microsoft et date de 1985. GIMP et IcoFX le lisent.

ICO a été publié en 1985 et JXL en 2021. Le plus ancien est en général le fichier le plus sûr à remettre ; le plus récent fait le même travail en moins d’octets.

De JXL à ICO : questions fréquentes

Mon fichier JXL est-il téléversé quelque part ?

Non. Cette conversion se fait entièrement dans votre navigateur : le fichier ne quitte donc pas votre appareil. Vous pouvez le vérifier vous-même — ouvrez l’onglet réseau des outils de développement et convertissez quelque chose. Vous verrez la page elle-même et les requêtes de statistiques et de publicité qui financent ce service, et pas une seule qui transporte votre fichier. Le moteur de cette paire précise est jSquash, des versions WebAssembly des codecs d’image de référence ; votre navigateur le télécharge une fois puis le garde en cache.

Convertir JXL en ICO est-il gratuit ?

Oui. Pas de compte, pas de filigrane et pas de quota journalier à dépenser : cela tourne sur votre propre machine, vous pouvez donc revenir autant de fois que vous voulez. Le navigateur traite des fichiers jusqu’à 100 Mo, 100 à la fois. jSquash est téléchargé sur votre machine et s’y exécute, et c’est pourquoi rien n’est compté.

Y a-t-il une perte de qualité en convertissant JXL en ICO ?

ICO compresse, des données sont donc perdues. Au réglage par défaut cela ne se voit pas ; pour en être sûr, montez la qualité. Réduit à des tailles d’icône ; le détail au-delà de 256 pixels est écarté.

Passer de JXL à ICO réduit-il la profondeur de couleur ?

JXL enregistre jusqu’à 32 bits par canal, ICO en garde 8. Cette précision supplémentaire est ce qui encaisse des corrections fortes sans bandes : convertissez après la retouche plutôt qu’avant.

La transparence survit-elle de JXL à ICO ?

La transparence est conservée. JXL et ICO enregistrent tous deux une couche alpha : un détourage reste détouré et rien n’est rempli derrière.

En savoir plus sur ces formats