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

Outils GIF

Redimensionnez, optimisez, changez la vitesse, inversez, extrayez des images et faites pivoter des GIF animés. Fournit plusieurs modes d'opération dans un seul outil.

Point de terminaison de l'API

POST /api/v1/tools/image/gif-tools

Paramètres

Paramètres communs

ParamètreTypeRequisPar défautDescription
modestringNon"resize"Mode d'opération : resize, optimize, speed, reverse, extract, rotate
loopnumberNon0Nombre de boucles pour le GIF de sortie (0 = infini, 1-100 = boucles finies)

Paramètres du mode Redimensionner

ParamètreTypeRequisPar défautDescription
widthintegerNon-Largeur cible en pixels (1 à 16384)
heightintegerNon-Hauteur cible en pixels (1 à 16384)
percentagenumberNon-Mise à l'échelle par pourcentage (1 à 500). Remplace width/height si défini.

Paramètres du mode Optimiser

ParamètreTypeRequisPar défautDescription
colorsnumberNon256Nombre maximal de couleurs dans la palette (2 à 256)
dithernumberNon1.0Intensité du tramage (0 à 1, où 0 désactive le tramage)
effortnumberNon7Niveau d'effort d'optimisation (1 à 10, plus élevé = plus lent mais plus petit)

Paramètres du mode Vitesse

ParamètreTypeRequisPar défautDescription
speedFactornumberNon1.0Multiplicateur de vitesse (0.1 à 10). Les valeurs > 1 accélèrent, < 1 ralentissent.

Paramètres du mode Extraire

ParamètreTypeRequisPar défautDescription
extractModestringNon"single"Mode d'extraction : single, range, all
frameNumbernumberNon0Index de l'image à extraire en mode single (base 0)
frameStartnumberNon0Index de l'image de début pour le mode range (base 0)
frameEndnumberNon-Index de l'image de fin pour le mode range (base 0, inclus)
extractFormatstringNon"png"Format des images extraites : png, webp

Paramètres du mode Pivoter

ParamètreTypeRequisPar défautDescription
anglenumberNon-Angle de rotation : 90, 180, ou 270 degrés
flipHbooleanNonfalseRetourner horizontalement
flipVbooleanNonfalseRetourner verticalement

Exemples de requêtes

Redimensionner

bash
curl -X POST http://localhost:1349/api/v1/tools/image/gif-tools \
  -F "[email protected]" \
  -F 'settings={"mode":"resize","percentage":50}'

Optimiser

bash
curl -X POST http://localhost:1349/api/v1/tools/image/gif-tools \
  -F "[email protected]" \
  -F 'settings={"mode":"optimize","colors":128,"effort":9}'

Accélérer

bash
curl -X POST http://localhost:1349/api/v1/tools/image/gif-tools \
  -F "[email protected]" \
  -F 'settings={"mode":"speed","speedFactor":2.0}'

Extraire une seule image

bash
curl -X POST http://localhost:1349/api/v1/tools/image/gif-tools \
  -F "[email protected]" \
  -F 'settings={"mode":"extract","extractMode":"single","frameNumber":5,"extractFormat":"png"}'

Exemple de réponse

json
{
  "jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/animation.gif",
  "originalSize": 2345678,
  "processedSize": 1234567
}

Sous-route Info

POST /api/v1/tools/image/gif-tools/info

Renvoie les métadonnées d'un GIF animé sans le traiter.

Requête Info

bash
curl -X POST http://localhost:1349/api/v1/tools/image/gif-tools/info \
  -F "[email protected]"

Réponse Info

json
{
  "width": 480,
  "height": 320,
  "pages": 24,
  "delay": [100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100],
  "loop": 0,
  "fileSize": 2345678,
  "duration": 2400
}

Notes

  • Utilise la factory createToolRoute standard pour le point de terminaison de traitement principal.
  • Le point de terminaison Info ne nécessite qu'un téléversement de fichier (aucun réglage requis).
  • En mode resize, si percentage est fourni, il est prioritaire sur width/height. Le redimensionnement utilise fit: inside pour conserver le rapport d'aspect.
  • En mode speed, les délais des images sont divisés par le facteur de vitesse. Le délai minimal par image est de 20 ms (limitation de la spécification GIF).
  • En mode reverse, le paramètre speedFactor est également disponible pour ajuster simultanément la vitesse pendant l'inversion.
  • En mode extract avec range ou all, la sortie est un fichier ZIP contenant les images individuelles.
  • En mode rotate, chaque image est traitée individuellement puis réassemblée en une animation.
  • Le paramètre loop contrôle le nombre de fois où le GIF de sortie boucle. Utilisez 0 pour une boucle infinie.
  • Le champ duration de la réponse Info est la durée totale de l'animation en millisecondes.