Recadrer une image
Recadrer une image consiste à en découper une portion : vous retirez les bords superflus pour recentrer le sujet ou pour obtenir un format imposé. À la différence du redimensionnement, qui change la taille de toute l’image, le recadrage supprime réellement une partie du cadre et ne garde que la zone que vous délimitez.
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.
Découper une zone, pas seulement réduire
Le recadrage retire des pixels sur les côtés : ce qui sort du cadre disparaît. C’est la différence essentielle avec le redimensionnement, qui conserve l’intégralité de l’image en la rendant plus petite. On recadre pour recentrer un sujet, écarter un élément gênant en bord de photo, ou obtenir une proportion que l’original ne respectait pas — un carré à partir d’un rectangle, par exemple.
Définir la zone à conserver
Vous indiquez la région à garder : soit par ses coordonnées et sa taille en pixels, soit par un rapport de format à respecter, comme 1:1 pour un carré ou 16:9 pour une bannière. L’outil découpe précisément cette zone et écarte le reste. Le contenu conservé n’est ni étiré ni compressé : il garde sa résolution d’origine, seule la surface change.
Recadrer pour un format imposé
Beaucoup de plateformes et de formulaires exigent un rapport précis : photo carrée, vignette au format fixe, visuel de couverture en largeur. Plutôt que de subir un recadrage automatique parfois maladroit, vous choisissez vous-même la portion retenue. C’est la garantie que le visage, le logo ou le détail important reste bien dans le cadre final.
Ce qui change et ce qui reste
Après recadrage, l’image est plus petite en pixels, puisqu’une partie a été retirée, et son poids diminue en conséquence. Les couleurs, la netteté et le format de fichier restent inchangés. Si vous avez besoin d’une dimension finale précise en plus du recadrage, un redimensionnement peut suivre l’opération.
Cas d’usage
Une photo d’identité recentrée
Nadia Benali a photographié un document trop large. Elle recadre pour ne conserver que la partie utile, sans les marges parasites, et obtient un fichier propre à joindre à sa démarche en ligne.
Un carré pour un profil
Thomas Rousseau veut une photo de profil carrée à partir d’un portrait vertical. Il fixe un rapport 1:1 centré sur le visage : le cadre final est net, sans déformation ni bandes ajoutées.
Une bannière au bon rapport
Studio Lumen SAS a besoin d’un visuel de couverture en 16:9 pour une page. Le recadrage retient la zone centrale de la photo, exactement au format attendu par la plateforme.
Questions fréquentes
Quelle est la différence entre recadrer et redimensionner ?
Recadrer découpe une partie de l’image et jette le reste ; redimensionner garde toute l’image mais change sa taille. On recadre pour recentrer ou imposer un format, on redimensionne pour ajuster les dimensions sans rien perdre du contenu.
Le recadrage abîme-t-il la netteté ?
Non. La zone conservée garde sa résolution d’origine, sans étirement ni compression. L’image est simplement plus petite parce qu’une portion a été retirée.
Puis-je imposer un rapport comme 1:1 ou 16:9 ?
Oui. Vous pouvez recadrer selon un rapport de format précis, carré ou rectangulaire, ou bien selon des coordonnées en pixels si vous voulez délimiter une zone exacte.
Quels formats et quelles tailles sont acceptés ?
Les formats courants — JPG, PNG, WebP — dans la limite de 15 Mo et 12 mégapixels par image, ce qui couvre les photos de téléphone et la plupart des captures.
Combien coûte un recadrage ?
Le tarif est affiché : $0.002 par requête et $0.005 par image traitée, via notre API. Aucun abonnement, aucun compte à ouvrir — le paiement se fait directement.
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/crop \
-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/crop", {
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/crop",
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/crop", 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/crop", 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.crop",
"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. |