This page was machine-translated. Spotted a mistake?Help improve it.
Skip to content

Image vers Base64

Convertissez une ou plusieurs images en chaînes encodées en base64 et en URI de données. Prend en charge la conversion de format facultative, le contrôle de la qualité et le redimensionnement. Utile pour intégrer des images directement dans du HTML, du CSS, du JSON ou des modèles d'e-mail.

Point de terminaison de l'API

POST /api/v1/tools/image/image-to-base64

Accepte des données de formulaire multipart avec une ou plusieurs images et un champ JSON settings facultatif.

Paramètres

ParamètreTypeRequisPar défautDescription
outputFormatstringNon"original"Convertir avant l'encodage : original, jpeg, png, webp, avif, jxl
qualitynumberNon80Qualité de sortie pour les formats avec perte (1 à 100)
maxWidthnumberNon0Largeur maximale en pixels (0 = pas de redimensionnement, n'agrandira pas)
maxHeightnumberNon0Hauteur maximale en pixels (0 = pas de redimensionnement, n'agrandira pas)

Exemple de requête

bash
curl -X POST http://localhost:1349/api/v1/tools/image/image-to-base64 \
  -H "Authorization: Bearer si_your-api-key" \
  -F "[email protected]" \
  -F 'settings={"outputFormat": "webp", "quality": 80, "maxWidth": 200}'

Plusieurs fichiers :

bash
curl -X POST http://localhost:1349/api/v1/tools/image/image-to-base64 \
  -H "Authorization: Bearer si_your-api-key" \
  -F "[email protected]" \
  -F "[email protected]" \
  -F "[email protected]" \
  -F 'settings={"outputFormat": "original"}'

Exemple de réponse

json
{
  "results": [
    {
      "filename": "icon.png",
      "mimeType": "image/webp",
      "width": 200,
      "height": 200,
      "originalSize": 45000,
      "encodedSize": 28800,
      "overheadPercent": -36.0,
      "base64": "UklGRlYAAABXRUJQ...",
      "dataUri": "data:image/webp;base64,UklGRlYAAABXRUJQ..."
    }
  ],
  "errors": []
}

Champs de réponse

ChampTypeDescription
resultsarrayImages converties avec succès
errorsarrayImages qui n'ont pas pu être traitées (avec nom de fichier et message d'erreur)

Objet Result

ChampTypeDescription
filenamestringNom de fichier d'origine
mimeTypestringType MIME de la sortie encodée
widthnumberLargeur finale en pixels (après tout redimensionnement)
heightnumberHauteur finale en pixels (après tout redimensionnement)
originalSizenumberTaille du fichier d'origine en octets
encodedSizenumberTaille de la chaîne base64 en octets
overheadPercentnumberPourcentage de différence de taille par rapport à l'original (positif = plus grand, négatif = plus petit)
base64stringDonnées d'image brutes encodées en base64
dataUristringURI de données complet prêt à l'emploi dans les attributs src

Notes

  • L'encodage base64 augmente généralement la taille d'environ 33 % par rapport au fichier binaire. Le champ overheadPercent indique la différence réelle.
  • Lorsque outputFormat vaut "original", les fichiers HEIC/HEIF sont convertis en JPEG (car les navigateurs ne peuvent pas afficher le HEIC dans les URI de données).
  • Les options maxWidth et maxHeight redimensionnent en utilisant fit: inside avec withoutEnlargement, de sorte que les images plus petites que les dimensions spécifiées ne sont pas agrandies.
  • Plusieurs fichiers peuvent être traités en une seule requête. Chaque fichier est traité indépendamment, et les échecs n'empêchent pas les autres fichiers de réussir.
  • Les fichiers SVG sont transmis tels quels en image/svg+xml sans réencodage (sauf si une conversion de format est demandée).
  • Il s'agit d'un point de terminaison en lecture seule. Il ne produit pas de fichier téléchargeable ni de jobId. Les données base64 sont renvoyées directement dans le corps de la réponse.