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

Replace & Invert Color

Vervang pixels die overeenkomen met een bronkleur door een doelkleur, of maak ze transparant. Gebruikt de euclidische afstand in de RGB-ruimte met een instelbare tolerantie voor vloeiende overgangen bij kleurgrenzen.

API Endpoint

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

Accepteert multipart form data met een afbeeldingsbestand en een JSON settings-veld.

Parameters

ParameterTypeVereistStandaardBeschrijving
sourceColorstringNee"#FF0000"Te vinden hex-kleur (formaat: #RRGGBB)
targetColorstringNee"#00FF00"Hex-kleur om mee te vervangen (formaat: #RRGGBB)
makeTransparentbooleanNeefalseOvereenkomende pixels transparant maken in plaats van te vervangen door de doelkleur
tolerancenumberNee30Tolerantie voor kleurovereenkomst (0 tot 255). Hogere waarden komen overeen met een breder bereik van vergelijkbare kleuren

Example Request

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}'

Een groene achtergrond transparant maken:

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}'

Example Response

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

Notes

  • Kleurovereenkomst gebruikt de euclidische afstand in de RGB-ruimte, geschaald door tolerance * sqrt(3).
  • Het mengen bij vervanging is evenredig met de kleurafstand: pixels die dichter bij de bronkleur liggen, krijgen meer van de doelkleur, wat vloeiende overgangen creëert.
  • Wanneer makeTransparent true is, wordt de uitvoer geforceerd naar PNG (of WebP/AVIF) als het invoerformaat geen alfakanalen ondersteunt (bijv. JPEG).
  • Een tolerantie van 0 komt alleen overeen met de exacte bronkleur. Hogere waarden (50+) komen overeen met een breder bereik van vergelijkbare tinten.
  • Het uitvoerformaat komt overeen met het invoerformaat, tenzij transparantie nodig is en het invoerformaat geen alfa-ondersteuning heeft.