Inverta i colori di un’immagine e calcoli i valori RGB complementari
Ottenga il colore complementare esatto di ogni pixel RGB: ogni canale diventa 255 meno il suo valore, quindi il nero diventa bianco, il rosso ciano e 12, 34, 56 diventa 243, 221, 199. Gratis nel suo browser.
- Gratis
- Funziona nel suo browser
- Senza registrazione
- I suoi dati restano sul dispositivo
Esegui gratis nel browser
L’invertitore dei colori riceve una sequenza di campioni di pixel RGB e calcola il colore complementare esatto di ciascuno. Ogni canale rosso, verde e blu viene sostituito con 255 meno il valore originale: il nero diventa bianco, il rosso diventa ciano e ogni valore intermedio cambia in modo prevedibile. Lo strumento verifica tutti i canali prima dell’elaborazione e rifiuta quelli fuori dall’intervallo RGB standard 0–255. È quindi adatto a controlli rapidi, didattica, test e pipeline di dati deterministiche.
Fornisca campioni RGB con una struttura chiara
Inserisca uno o più pixel, ognuno con i canali numerici r, g e b. L’ordine dei campioni viene conservato: il primo risultato invertito corrisponde al primo campione in ingresso, il secondo al secondo e così via. I valori possono includere gli estremi 0 e 255 e qualsiasi numero intermedio.
Ogni valore deve essere finito e rimanere nell’intervallo inclusivo 0–255 usato dai campioni RGB standard. Se un canale manca, non è numerico, è infinito o supera tale intervallo, la richiesta si interrompe con un errore di input invece di restituire un elenco trasformato solo in parte.
Comprenda il calcolo dell’inversione
L’inversione viene eseguita separatamente sui tre canali con la stessa equazione: il valore di uscita equivale a 255 meno quello di ingresso. Un pixel con rosso 255, verde 0 e blu 0 diventa quindi rosso 0, verde 255 e blu 255, cioè ciano. Il nero, rappresentato da 0, 0, 0, diventa bianco con 255, 255, 255.
I valori centrali restano vicini al centro, mentre i canali scuri si schiariscono e quelli chiari si scuriscono. Non vengono applicati conversione del profilo colore, regolazione gamma, arrotondamento, fusione o compressione. La capacità opera direttamente sui campioni numerici forniti, rendendo il calcolo trasparente e riproducibile.
Conserva anche i valori frazionari validi senza imporre numeri interi; per esempio, 10.5 diventa 244.5. Il risultato è quindi adatto a pipeline che usano campioni RGB in virgola mobile prima della rasterizzazione o quantizzazione. Poiché ogni uscita dipende solo dal relativo ingresso, chiamate ripetute producono sempre lo stesso risultato.
Usi il risultato nei flussi per immagini e test
L’oggetto restituito contiene un elenco pixels con i record RGB invertiti nell’ordine originale. La capacità lavora volutamente sui campioni invece di accettare un file PNG o JPEG codificato: decodifica e ricodifica possono introdurre scelte relative a metadati, compressione, canale alfa e profili colore che esulano da una semplice inversione RGB. Un contratto mirato rende semplice controllare i calcoli e confrontare i risultati tra ambienti.
È particolarmente utile per ottenere valori attesi canonici in un test grafico, illustrare i colori complementari o invertire colori già estratti da un altro strumento.
Casi d'uso
Spieghi i colori complementari
Mostri con precisione come cambiano nero, bianco, colori primari e valori RGB intermedi invertendo ogni canale.
Prepari i pixel per il rendering
Trasformi campioni RGB già decodificati da un canvas, parser raster o pipeline grafica prima della fase successiva.
Domande frequenti
Quanto costa l’operazione?
Lo stesso calcolo deterministico può essere eseguito anche nel browser su questa pagina.
Cosa accade se un canale è fuori da 0–255?
La richiesta non riesce e restituisce un errore di input che identifica pixel e canale. Non viene fornito alcun risultato parziale.
Sono ammessi valori RGB frazionari?
Sì. È accettato qualsiasi valore numerico finito tra 0 e 255 e viene restituito il suo inverso esatto senza arrotondamento forzato.
Lo strumento accetta file PNG o JPEG?
No. Riceve campioni di pixel RGB decodificati. Decodifica, metadati, compressione, canale alfa e profili colore non fanno parte del calcolo.
L’ordine dei pixel viene conservato?
Sì. Ogni record di uscita mantiene la stessa posizione nell’elenco del corrispondente record di ingresso.
Quanti campioni accetta una richiesta?
Una richiesta può contenere da uno a 100,000 campioni RGB.
Strumenti correlati
Per sviluppatori — accesso via API
Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.
Endpoint
Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.
Chiamala dal tuo stack
curl -X POST https://api.kit.forhosting.com/image/invert-colors \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"pixels":[{"r":255,"g":128,"b":0},{"r":12,"g":34,"b":56}]}'const res = await fetch("https://api.kit.forhosting.com/image/invert-colors", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"pixels": [
{
"r": 255,
"g": 128,
"b": 0
},
{
"r": 12,
"g": 34,
"b": 56
}
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/image/invert-colors",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"pixels": [
{
"r": 255,
"g": 128,
"b": 0
},
{
"r": 12,
"g": 34,
"b": 56
}
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/image/invert-colors", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"pixels":[{"r":255,"g":128,"b":0},{"r":12,"g":34,"b":56}]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"pixels":[{"r":255,"g":128,"b":0},{"r":12,"g":34,"b":56}]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/image/invert-colors", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Esempio di richiesta
{
"pixels": [
{
"r": 255,
"g": 128,
"b": 0
},
{
"r": 12,
"g": 34,
"b": 56
}
]
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "image.invert_colors",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.
Prezzi
Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.
Limiti
max_items | 100000 |
Errori
| HTTP | Codice | Significato |
|---|---|---|
401 | unauthorized | Chiave API mancante o non valida: controlla l'header Authorization. |
402 | insufficient_balance | Credito esaurito: ricarica per continuare a eseguire attività. |
404 | unknown_type | Tipo di attività sconosciuto: controlla il campo type della richiesta. |
429 | rate_limited | Troppe richieste in poco tempo: rallenta e riprova tra qualche secondo. |
Note tecniche
Fornisca campioni RGB con una struttura chiara
Una singola richiesta accetta fino a 100,000 campioni, limite pratico per il browser e per l’automazione tramite API.
Usi il risultato nei flussi per immagini e test
La versione nel browser esegue lo stesso calcolo puro dell’API. Può quindi verificare i dati sulla pagina e usare l’API a $0.002 per richiesta nei processi ricorrenti senza cambiare le regole.
Casi di integrazione
Crei fixture per test grafici
Generi campioni RGB complementari deterministici per i test unitari senza duplicare l’aritmetica dell’inversione.