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

Replace & Invert Color

Ganti piksel yang cocok dengan warna sumber dengan warna target, atau jadikan transparan. Menggunakan jarak Euclidean dalam ruang RGB dengan toleransi yang dapat dikonfigurasi untuk pemaduan mulus di batas warna.

API Endpoint

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

Menerima multipart form data dengan berkas gambar dan field JSON settings.

Parameters

ParameterTypeRequiredDefaultDescription
sourceColorstringNo"#FF0000"Warna hex yang dicari (format: #RRGGBB)
targetColorstringNo"#00FF00"Warna hex pengganti (format: #RRGGBB)
makeTransparentbooleanNofalseJadikan piksel yang cocok transparan alih-alih menggantinya dengan warna target
tolerancenumberNo30Toleransi pencocokan warna (0 hingga 255). Nilai lebih tinggi mencocokkan rentang warna serupa yang lebih luas

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

Jadikan latar belakang hijau transparan:

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

  • Pencocokan warna menggunakan jarak Euclidean dalam ruang RGB, diskalakan oleh tolerance * sqrt(3).
  • Pemaduan penggantian proporsional terhadap jarak warna: piksel yang lebih dekat ke warna sumber menerima lebih banyak warna target, menciptakan transisi mulus.
  • Saat makeTransparent bernilai true, output dipaksa ke PNG (atau WebP/AVIF) jika format input tidak mendukung kanal alfa (mis., JPEG).
  • Toleransi 0 hanya mencocokkan warna sumber yang persis. Nilai lebih tinggi (50+) akan mencocokkan rentang rona serupa yang lebih luas.
  • Format output mengikuti format input kecuali transparansi diperlukan dan format input tidak mendukung alfa.