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

Remplacer et inverser la couleur

Remplacez les pixels correspondant à une couleur source par une couleur cible, ou rendez-les transparents. Utilise la distance euclidienne dans l'espace RGB avec une tolérance configurable pour un fondu progressif aux frontières de couleur.

Point de terminaison API

POST /api/v1/tools/image/replace-color

Accepte des données de formulaire multipart avec un fichier image et un champ JSON settings.

Paramètres

ParamètreTypeRequisDéfautDescription
sourceColorstringNon"#FF0000"Couleur hexadécimale à rechercher (format : #RRGGBB)
targetColorstringNon"#00FF00"Couleur hexadécimale de remplacement (format : #RRGGBB)
makeTransparentbooleanNonfalseRendre les pixels correspondants transparents au lieu de les remplacer par la couleur cible
tolerancenumberNon30Tolérance de correspondance des couleurs (0 à 255). Des valeurs plus élevées font correspondre une gamme plus large de couleurs similaires

Exemple de requête

bash
curl -X POST http://localhost:1349/api/v1/tools/image/replace-color \
  -H "Authorization: Bearer si_your-api-key" \
  -F "[email protected]" \
  -F 'settings={"sourceColor": "#FF0000", "targetColor": "#0000FF", "tolerance": 40}'

Rendre un arrière-plan vert transparent :

bash
curl -X POST http://localhost:1349/api/v1/tools/image/replace-color \
  -H "Authorization: Bearer si_your-api-key" \
  -F "[email protected]" \
  -F 'settings={"sourceColor": "#00FF00", "makeTransparent": true, "tolerance": 50}'

Exemple de réponse

json
{
  "jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/photo.png",
  "originalSize": 2450000,
  "processedSize": 2100000
}

Remarques

  • La correspondance des couleurs utilise la distance euclidienne dans l'espace RGB, mise à l'échelle par tolerance * sqrt(3).
  • Le fondu du remplacement est proportionnel à la distance de couleur : les pixels plus proches de la couleur source reçoivent davantage de la couleur cible, ce qui crée des transitions progressives.
  • Lorsque makeTransparent vaut true, la sortie est forcée en PNG (ou WebP/AVIF) si le format d'entrée ne prend pas en charge les canaux alpha (par exemple JPEG).
  • Une tolérance de 0 ne fait correspondre que la couleur source exacte. Des valeurs plus élevées (50+) feront correspondre une gamme plus large de teintes similaires.
  • Le format de sortie correspond au format d'entrée, sauf si la transparence est nécessaire et que le format d'entrée ne prend pas en charge le canal alpha.