Créer une vignette
Une vignette est une version réduite d’une image, calibrée à une petite taille fixe pour servir d’aperçu dans une liste, une galerie ou un menu. L’outil fabrique cette miniature nette et légère à partir de votre fichier d’origine, en respectant un gabarit constant pour que tous les aperçus s’alignent proprement.
Exécuter en ligne
Exécutez cette tâche sur nos serveurs, avec votre compte. Les outils gratuits tournent dans votre navigateur ; celui-ci est facturé sur votre solde KIT au prix affiché ci-dessus.
Une miniature n’est pas une simple réduction
Réduire une image conserve ses proportions ; une vignette, elle, vise souvent un gabarit fixe — un carré de 150 pixels, par exemple — identique pour toute une collection. L’outil ajuste l’image à ce cadre, en recadrant si besoin, pour que chaque aperçu occupe exactement la même place. C’est ce qui donne une grille régulière plutôt qu’un assemblage de vignettes de tailles inégales.
Nette même en petit
Une bonne miniature reste lisible à petite échelle : les contours restent propres, le sujet reste reconnaissable. La réduction est calculée pour éviter l’effet d’escalier et le flou qu’on obtient en rétrécissant grossièrement une grande image. Le poids chute fortement, ce qui rend les pages de liste ou de galerie très rapides à charger, même avec des dizaines d’aperçus affichés en même temps.
Un gabarit constant pour toute une collection
L’intérêt d’une vignette tient à sa régularité. En appliquant le même format à chaque image, vous obtenez des listes alignées et des galeries ordonnées, où l’œil circule sans accroc. C’est particulièrement utile pour un catalogue, une médiathèque ou un tableau de fiches, où l’hétérogénéité des aperçus donnerait vite une impression de désordre.
Cas d’usage
Une galerie de portfolio
Studio Lumen SAS présente ses réalisations en grille. Chaque projet reçoit une vignette carrée identique : la page d’aperçu est propre et se charge instantanément, avant d’ouvrir l’image en grand.
Des aperçus de catalogue
Atelier Garnier SARL affiche ses meubles en liste. Une miniature au même gabarit pour chaque référence rend la navigation fluide, sans images qui débordent ou se tassent.
Des vignettes d’articles
Camille Moreau accompagne chaque billet d’une petite image d’aperçu. Les vignettes calibrées donnent une page d’accueil régulière et légère, agréable à parcourir sur mobile.
Questions fréquentes
Quelle différence avec un simple redimensionnement ?
Le redimensionnement garde les proportions et vous laisse une image plus petite mais toujours au même rapport. La vignette vise un gabarit fixe, souvent carré, identique pour toute une collection, quitte à recadrer légèrement pour respecter ce cadre.
La miniature reste-t-elle nette ?
Oui. La réduction est calculée pour préserver la lisibilité à petite taille : contours propres, sujet reconnaissable, sans l’effet de flou d’une réduction grossière.
Puis-je choisir la taille de la vignette ?
Oui. Vous fixez le gabarit voulu, par exemple un carré de 150 ou 300 pixels, et l’outil produit chaque miniature à cette dimension pour un rendu homogène.
Le format d’origine est-il conservé ?
La vignette sort dans le format de votre choix. Le JPG convient à la photo, le PNG et le WebP à des aperçus plus nets ou plus légers selon le besoin.
Combien coûte la création de vignettes ?
Le tarif affiché est de $0.002 par requête et $0.005 par image, via l’API. Pas d’abonnement ni de compte : une série de cent aperçus revient au prix de cent unités.
Pour les développeurs — accès API
Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.
Endpoint
Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.
Appeler depuis votre stack
curl -X POST https://api.kit.forhosting.com/image/thumbnail \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"image":"https://ejemplo.com/imagen.jpg"}'const res = await fetch("https://api.kit.forhosting.com/image/thumbnail", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"image": "https://ejemplo.com/imagen.jpg"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/image/thumbnail",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"image": "https://ejemplo.com/imagen.jpg"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/image/thumbnail", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"image":"https://ejemplo.com/imagen.jpg"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"image":"https://ejemplo.com/imagen.jpg"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/image/thumbnail", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemple de requête
{
"image": "https://ejemplo.com/imagen.jpg"
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "image.thumbnail",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.
Tarifs
Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.
Limites
max_mb | 15 |
max_megapixels | 12 |
Erreurs
| HTTP | Code | Signification |
|---|---|---|
401 | unauthorized | Clé API absente ou invalide : vérifiez l’en-tête Authorization. |
402 | insufficient_balance | Solde insuffisant : rechargez votre compte pour lancer cette tâche. |
404 | unknown_type | Type de tâche inconnu : vérifiez le champ type de votre requête. |
429 | rate_limited | Trop de requêtes : ralentissez la cadence, puis réessayez. |