Search K
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
| Parameter | Type | Vereist | Standaard | Beschrijving |
|---|---|---|---|---|
| sourceColor | string | Nee | "#FF0000" | Te vinden hex-kleur (formaat: #RRGGBB) |
| targetColor | string | Nee | "#00FF00" | Hex-kleur om mee te vervangen (formaat: #RRGGBB) |
| makeTransparent | boolean | Nee | false | Overeenkomende pixels transparant maken in plaats van te vervangen door de doelkleur |
| tolerance | number | Nee | 30 | Tolerantie 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
makeTransparenttrueis, 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.
