Comprima un'immagine e stimi la riduzione
La compressione dell'immagine per qualità stima quanto può ridursi un file quando viene esportato con la percentuale di qualità scelta.
Esegui gratis nel browser
Selezioni JPEG, PNG, WebP o AVIF e inserisca un numero intero da 1 a 100. Il calcolatore restituisce la dimensione stimata rispetto a un'esportazione con qualità 100 nello stesso formato e la relativa percentuale di riduzione. Non richiede l'immagine, le sue dimensioni né il numero originale di byte. È quindi utile per confronti e pianificazioni rapide, mentre la confidenza indicata chiaramente come approssimativa riflette la variazione reale dovuta al contenuto e alle impostazioni del codificatore.
Legga il risultato come una stima relativa
Scelga il formato nel quale intende esportare e inserisca il valore di qualità che verrà fornito al codificatore. Il risultato usa come riferimento un'esportazione con qualità 100 nello stesso formato, rappresentata come 100 per cento della dimensione relativa. Se il calcolatore indica una dimensione relativa del 63 per cento e una riduzione stimata del 37 per cento, il modello considera l'esportazione di qualità inferiore grande circa il 63 per cento della versione con qualità 100. Non significa che l'output occuperà il 63 per cento dei byte del file attuale, perché quest'ultimo potrebbe usare un altro formato, altre dimensioni, un diverso codificatore, un altro profilo di metadati o un'altra impostazione di qualità. Il campo della qualità di riferimento rende esplicito il confronto. Pertanto, una qualità pari a 100 non restituisce alcuna riduzione stimata. I valori da 1 a 99 seguono una curva progressiva specifica per il formato. Usi la percentuale come rapido indicatore per budget o confronti e la moltiplichi per una dimensione nota a qualità 100 solo quando entrambe le esportazioni condividono tutte le altre impostazioni.
Comprenda perché ogni formato ha una curva diversa
I controlli di qualità non si trasformano direttamente in percentuali di byte. I codificatori JPEG, WebP e AVIF eliminano informazioni in modi differenti e le loro scale numeriche di qualità non sono intercambiabili. Questo calcolatore rappresenta tali formati con perdita mediante curve non lineari separate e piccoli valori minimi specifici. Il modello attribuisce ad AVIF e WebP una riduzione maggiore al diminuire della qualità, mentre JPEG segue una curva leggermente più moderata. PNG si comporta diversamente, perché il formato standard è senza perdita e molte applicazioni usano un controllo simile alla qualità per scegliere lo sforzo di compressione, ridurre la tavolozza o applicare un'ottimizzazione specifica. Il relativo modello è volutamente prudente e mantiene un minimo molto più alto, così la riduzione della qualità PNG non viene presentata come equivalente a quella JPEG. Queste curve sono ipotesi deterministiche per la pianificazione, non misurazioni di un particolare codificatore. Gli stessi input producono sempre lo stesso output, agevolando l'impiego in interfacce, fogli di calcolo, test e pianificazione iniziale. Per conoscere i byte definitivi, codifichi i pixel effettivi con l'esatta libreria di produzione e misuri il file ottenuto.
Usi le stime senza promettere risultati esatti
La complessità dell'immagine è la principale variabile assente in una stima basata su due soli campi. Un logo uniforme, un ritratto con sfondo sfocato e un paesaggio rumoroso possono produrre dimensioni molto diverse anche con formato e qualità identici. Il sottocampionamento cromatico, la trasparenza alfa, l'animazione, i profili colore, i metadati, le versioni del codificatore, le impostazioni di velocità e le opzioni senza perdita modificano anch'essi il risultato. Consideri la riduzione restituita come punto di partenza per scegliere un'impostazione, non come garanzia della dimensione di caricamento o del costo di trasferimento. È adatta a confrontare vari valori di qualità in un flusso di esportazione coerente, definire un valore iniziale prima di un ciclo di codifica misurato o spiegare la direzione e la portata probabili di una modifica. Quando un servizio impone un limite rigoroso di byte, esegua una codifica, verifichi la dimensione effettiva e regoli la qualità con una ricerca limitata. Il rifiuto dei valori esterni all'intervallo da 1 a 100 impedisce inoltre estrapolazioni del modello prive di un significato utile.
Casi d'uso
Pianifichi un budget per immagini web
Stimi il risparmio relativo di una qualità proposta prima di produrre un insieme completo di immagini responsive.
Confronti le impostazioni di esportazione
Valuti più percentuali di qualità per un formato e scelga un punto iniziale sensato per codifiche di prova misurate.
Inizializzi un codificatore automatico
Usi la stima per avviare una ricerca limitata della compressione vicino all'obiettivo probabile, anziché procedere alla cieca.
Domande frequenti
Qual è il riferimento per la dimensione del file?
Il riferimento è un'esportazione della stessa immagine e dello stesso formato con qualità 100, rappresentata come 100 per cento della dimensione relativa.
Il risultato prevede un numero esatto di byte?
No. È una stima relativa approssimativa perché non vengono forniti pixel, dimensioni, metadati e impostazioni del codificatore.
Perché la riduzione PNG è più prudente?
PNG è normalmente senza perdita, quindi un'impostazione simile alla qualità cambia spesso lo sforzo di compressione o la gestione della tavolozza, invece di agire come la qualità con perdita di JPEG.
Che cosa accade se la qualità è zero o superiore a 100?
La richiesta non riesce e restituisce un errore di input non valido. La qualità deve essere un intero da 1 a 100.
Quanto costa una richiesta API?
Ogni richiesta API costa $0.002.
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/compress-quality \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"format":"jpeg","quality":75}'const res = await fetch("https://api.kit.forhosting.com/image/compress-quality", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"format": "jpeg",
"quality": 75
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/image/compress-quality",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"format": "jpeg",
"quality": 75
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/image/compress-quality", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"format":"jpeg","quality":75}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"format":"jpeg","quality":75}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/image/compress-quality", 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
{
"format": "jpeg",
"quality": 75
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "image.compress_quality",
"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_mb | 15 |
max_megapixels | 12 |
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. |