---
seo_title: API conversion d'images JPEG, PNG, WebP, HEIC, SVG | EnConvert
meta_desc: Convertissez des images entre JPEG, PNG, WebP, HEIC et SVG, ou générez des JPEG à partir de pages PDF, avec une seule API REST. Octets bruts ou URL présignée.
keywords: api de conversion d'images, convertir jpeg en png api, convertir png en webp api, convertir heic en jpg api, convertir svg en png api, api pdf vers image, optimiser des images api
---

# API de conversion d'images

Avec une seule API REST, convertissez des images entre JPEG, PNG, WebP, HEIC et SVG, générez des JPEG à partir de pages PDF, ou compressez des images sans en changer le format. Chaque endpoint accepte un envoi `multipart/form-data` et effectue la conversion de façon synchrone à l'aide de Pillow, CairoSVG, pillow-heif ou PyMuPDF selon la paire de formats. Par défaut, la réponse est le fichier converti brut ; définissez `direct_download=false` pour recevoir à la place des métadonnées JSON avec une URL de téléchargement présignée.

## Conversions prises en charge

| Conversion | Endpoint | Description |
|------------|----------|-------------|
| [JPEG vers PNG](/fr/docs/endpoints/convert/images/jpeg-to-png.md) | `POST /v1/convert/jpeg-to-png` | Convertit un fichier `.jpeg`/`.jpg` envoyé en PNG sans perte, avec une fidélité des couleurs totale. |
| [PNG vers JPEG](/fr/docs/endpoints/convert/images/png-to-jpeg.md) | `POST /v1/convert/png-to-jpeg` | Convertit un `.png` en JPEG de qualité maximale, en composant les zones transparentes sur un fond blanc. |
| [JPEG vers SVG](/fr/docs/endpoints/convert/images/jpeg-to-svg.md) | `POST /v1/convert/jpeg-to-svg` | Intègre le JPEG en base64 sous forme d'URI de données dans un élément SVG `<image>`. C'est un simple habillage matriciel, pas une vectorisation. |
| [SVG vers JPEG](/fr/docs/endpoints/convert/images/svg-to-jpeg.md) | `POST /v1/convert/svg-to-jpeg` | Rastérise le SVG avec CairoSVG et renvoie un JPEG, en composant la transparence sur un fond blanc. |
| [JPEG vers HEIC](/fr/docs/endpoints/convert/images/jpeg-to-heic.md) | `POST /v1/convert/jpeg-to-heic` | Encode un fichier `.jpeg`/`.jpg` envoyé en HEIC haute qualité à l'aide du codec HEIF. |
| [HEIC vers JPEG](/fr/docs/endpoints/convert/images/heic-to-jpeg.md) | `POST /v1/convert/heic-to-jpeg` | Décode un fichier `.heic` ou `.heif` envoyé (par ex. des photos iPhone) et produit un JPEG haute qualité. |
| [JPEG vers WebP](/fr/docs/endpoints/convert/images/jpeg-to-webp.md) | `POST /v1/convert/jpeg-to-webp` | Produit un WebP haute qualité, plus léger que le JPEG équivalent, pour la diffusion web. |
| [WebP vers JPEG](/fr/docs/endpoints/convert/images/webp-to-jpeg.md) | `POST /v1/convert/webp-to-jpeg` | Convertit un `.webp` en JPEG, en composant les éventuelles zones transparentes sur un fond blanc. |
| [PNG vers SVG](/fr/docs/endpoints/convert/images/png-to-svg.md) | `POST /v1/convert/png-to-svg` | Intègre le PNG sous forme d'URI de données en base64 dans un habillage SVG aux dimensions en pixels de l'image d'origine. Ce n'est pas une vectorisation. |
| [SVG vers PNG](/fr/docs/endpoints/convert/images/svg-to-png.md) | `POST /v1/convert/svg-to-png` | Rastérise le SVG avec CairoSVG à la taille déclarée, en conservant la transparence dans le PNG obtenu. |
| [PNG vers HEIC](/fr/docs/endpoints/convert/images/png-to-heic.md) | `POST /v1/convert/png-to-heic` | Convertit un `.png` en HEIC, en composant les zones transparentes sur un fond blanc. |
| [HEIC vers PNG](/fr/docs/endpoints/convert/images/heic-to-png.md) | `POST /v1/convert/heic-to-png` | Convertit un fichier `.heic` ou `.heif` envoyé en PNG sans perte, avec une fidélité des couleurs totale. |
| [PNG vers WebP](/fr/docs/endpoints/convert/images/png-to-webp.md) | `POST /v1/convert/png-to-webp` | Convertit un `.png` en WebP en conservant le canal alpha (transparence). |
| [WebP vers PNG](/fr/docs/endpoints/convert/images/webp-to-png.md) | `POST /v1/convert/webp-to-png` | Convertit un `.webp` en PNG sans perte, en conservant la transparence. |
| [SVG vers HEIC](/fr/docs/endpoints/convert/images/svg-to-heic.md) | `POST /v1/convert/svg-to-heic` | Rend le SVG avec CairoSVG et l'encode en HEIC à qualité maximale sur un fond blanc. |
| [HEIC vers SVG](/fr/docs/endpoints/convert/images/heic-to-svg.md) | `POST /v1/convert/heic-to-svg` | Décode le HEIC en PNG et l'intègre sous forme d'URI de données en base64 dans un habillage SVG. Ce n'est pas une vectorisation. |
| [SVG vers WebP](/fr/docs/endpoints/convert/images/svg-to-webp.md) | `POST /v1/convert/svg-to-webp` | Rend le SVG avec CairoSVG et l'encode en WebP à qualité maximale en conservant la transparence. |
| [WebP vers SVG](/fr/docs/endpoints/convert/images/webp-to-svg.md) | `POST /v1/convert/webp-to-svg` | Décode le WebP en PNG et l'intègre sous forme d'URI de données en base64 dans un habillage SVG. Ce n'est pas une vectorisation. |
| [HEIC vers WebP](/fr/docs/endpoints/convert/images/heic-to-webp.md) | `POST /v1/convert/heic-to-webp` | Convertit un fichier `.heic` ou `.heif` envoyé en WebP haute qualité, en conservant le canal alpha s'il est présent. |
| [WebP vers HEIC](/fr/docs/endpoints/convert/images/webp-to-heic.md) | `POST /v1/convert/webp-to-heic` | Convertit un `.webp` en HEIC à qualité maximale, en composant la transparence sur un fond blanc. |
| [PDF vers JPEG](/fr/docs/endpoints/convert/images/pdf-to-jpeg.md) | `POST /v1/convert/pdf-to-jpeg` | Génère un JPEG à 144 DPI pour chaque page du PDF ; les PDF d'une seule page renvoient un JPEG, les PDF multi-pages renvoient un ZIP contenant un JPEG par page. |
| [Compresser une image](/fr/docs/endpoints/convert/images/compress-image.md) | `POST /v1/convert/compress-image` | Compresse un PNG, JPEG ou WebP sur place (format inchangé) : optimisation sans perte en priorité, avec réduction facultative des dimensions à rapport d'aspect verrouillé pour tenir dans un budget `target_size_kb`. |

## Conventions communes

- **Authentification :** chaque endpoint nécessite soit une clé API privée (`X-API-Key: sk_...`), soit un jeton JWT issu d'une clé publique (`Authorization: Bearer <jwt_token>`). Voir [Authentification](/fr/docs/authentication.md).
- **Forme de la requête :** tous les endpoints acceptent du `multipart/form-data` avec un champ `file` obligatoire, plus les paramètres optionnels `output_filename` et `direct_download`. Les endpoints de rastérisation SVG (`svg-to-png`, `svg-to-jpeg`, `svg-to-webp`) acceptent aussi des dimensions optionnelles `width`/`height` en pixels, et `compress-image` accepte un budget optionnel `target_size_kb`. Voir [Tâches synchrones et asynchrones](/fr/docs/concepts/sync-and-async.md).
- **Réponses :** les conversions s'exécutent de façon synchrone. Avec `direct_download=true` (valeur par défaut), vous obtenez les octets bruts convertis ; avec `direct_download=false`, vous obtenez des métadonnées JSON incluant `presigned_url`, `object_key`, `filename`, `file_size` et `conversion_time_seconds`.
- **Erreurs et limites :** les endpoints renvoient `400` pour une entrée invalide ou corrompue, `401` pour des identifiants manquants/invalides, `402` lorsque le quota mensuel d'ops ou la limite de stockage de votre plan est atteint, et `413` lorsqu'un fichier dépasse la taille maximale autorisée par votre plan. Voir [Codes d'erreur](/fr/docs/reference/errors.md).
- **Qualité :** les endpoints de conversion encodent à qualité maximale (non configurable). La *taille* de sortie, elle, est configurable là où c'est indiqué ci-dessus : `width`/`height` sur les endpoints de rastérisation SVG, `target_size_kb` sur `compress-image`.

## Questions fréquentes

### Comment convertir un format d'image avec une API REST ?

Envoyez une requête POST `multipart/form-data` à l'endpoint `/v1/convert/{source}-to-{target}` correspondant, avec votre image dans le champ `file`, authentifiée via `X-API-Key` ou un jeton JWT `Bearer`. Par défaut, l'API répond avec le fichier converti brut ; définissez `direct_download=false` pour obtenir à la place des métadonnées JSON avec une URL de téléchargement présignée.

### Les endpoints de sortie SVG vectorisent-ils mon image ?

Non. Les endpoints JPEG, PNG, WebP et HEIC vers SVG encodent l'image matricielle en base64 et l'intègrent sous forme d'URI de données dans un élément SVG `<image>` dimensionné selon les proportions en pixels d'origine. Ils ne convertissent pas l'image en tracés vectoriels, et l'encodage base64 ajoute environ 33 % à la taille du fichier.

### Qu'advient-il de la transparence pendant la conversion ?

Cela dépend du format de sortie. Les conversions vers JPEG et HEIC composent les zones transparentes sur un fond blanc, car ces formats de sortie sont produits sans transparence. Les conversions vers PNG et WebP conservent le canal alpha.
