Ajouter une bordure à une image
L’ajout d’une bordure modifie la taille du canevas d’une image, sans toucher à l’illustration originale qu’il contient.
Lancer gratuitement
Ce calculateur utilise la largeur et la hauteur initiales en pixels, applique la même épaisseur en haut, à droite, en bas et à gauche, puis renvoie les dimensions extérieures exactes. Il conserve aussi la couleur fournie dans le résultat afin que le calcul accompagne une spécification graphique, une tâche d’exportation ou un traitement automatisé d’images.
Calculez la taille du canevas avant l’exportation
Une bordure occupe de l’espace au-delà de chaque côté de l’image originale. Une bordure de 20 pixels n’ajoute donc pas seulement 20 pixels à la largeur ou à la hauteur : elle ajoute 20 pixels à gauche et 20 autres à droite, ainsi que 20 pixels en haut et en bas. Indiquez la largeur et la hauteur initiales en pixels, l’épaisseur d’un côté de la bordure et la couleur souhaitée. Le calculateur renvoie les mesures d’origine avec les nouvelles largeur et hauteur extérieures, ce qui facilite la vérification. Cette information est utile avant d’ouvrir un éditeur d’images, de préparer une règle de traitement par lots ou de réserver une zone dans une mise en page. Le calcul ne redimensionne, ne recadre, n’étire et n’encode aucune image. Il répond uniquement à la question des dimensions, sans ambiguïté sur une éventuelle modification du contenu original. Une épaisseur nulle est acceptée et conserve les dimensions initiales, afin qu’un logiciel puisse suivre le même parcours même lorsqu’aucune bordure visible n’est requise.
Comprenez la formule de la bordure
La formule est volontairement simple et prévisible : la largeur extérieure correspond à la largeur initiale augmentée de deux fois l’épaisseur de la bordure, et la hauteur extérieure suit le même principe. La multiplication par deux tient compte des deux côtés opposés de chaque axe. Par exemple, une image de 1200 pixels sur 800 avec une bordure de 24 pixels atteint 1248 pixels sur 848. La couleur ne modifie aucune dimension, mais elle est renvoyée afin que le code en aval conserve le réglage visuel avec les mesures. La largeur et la hauteur originales doivent être des entiers positifs, car les dimensions en pixels décrivent un véritable canevas matriciel. L’épaisseur peut être nulle ou correspondre à un nombre fini positif, ce qui convient aux mesures de mise en page fractionnaires comme aux pixels entiers habituels. Les valeurs négatives sont refusées : elles décriraient un recadrage ou une géométrie intérieure, et non l’ajout d’une bordure extérieure. Utilisez un calcul de recadrage distinct si vous souhaitez retirer des pixels sur les côtés.
Exploitez le résultat en création et en automatisation
Les dimensions extérieures obtenues peuvent alimenter directement la préparation d’une mise en page, la création d’un canevas, la validation de ressources ou une estimation de stockage. Une personne chargée du développement peut déterminer le canevas requis avant de dessiner l’image originale avec le décalage de la bordure. Une personne chargée du design peut vérifier qu’une vignette encadrée tient toujours dans une carte fixe ou un emplacement de place de marché. Une équipe de production peut comparer le résultat à une limite de téléversement avant de traiter des milliers de fichiers. L’opération reposant uniquement sur une arithmétique déterministe, des entrées identiques produisent toujours le même résultat, sans réseau, téléversement, valeur aléatoire ni transformation cachée. La couleur fournie est considérée comme une étiquette, sans interprétation ni conversion : un code hexadécimal, un nom CSS ou un jeton interne reste donc intact après suppression des espaces périphériques. Le tarif de l’API est de $0.002 par requête. La réponse présente les mesures initiales et finales pour rendre les journaux explicites et éviter toute confusion.
Cas d’usage
Préparer un canevas avec bordure
Calculez les dimensions exactes du canevas avant de placer l’image originale intacte dans une nouvelle bordure colorée.
Valider des visuels de place de marché
Vérifiez qu’une image de produit respecte encore une limite de téléversement ou de mise en page après l’ajout d’une bordure uniforme.
Planifier un traitement d’images par lots
Obtenez des dimensions de sortie prévisibles pour un flux automatisé avant de consacrer des ressources au rendu de chaque image.
Questions fréquentes
Comment les nouvelles dimensions sont-elles calculées ?
Deux fois l’épaisseur de la bordure sont ajoutées aux deux dimensions, car celle-ci apparaît sur deux côtés de chaque axe.
Cette fonctionnalité modifie-t-elle ou téléverse-t-elle mon image ?
Non. Elle reçoit uniquement les dimensions et les réglages de bordure, puis renvoie les mesures calculées sans lire ni modifier un fichier image.
L’épaisseur de la bordure peut-elle être nulle ?
Oui. Une épaisseur nulle est valide et produit des dimensions extérieures identiques aux dimensions d’origine.
Que se passe-t-il si l’épaisseur est négative ?
La requête échoue avec une erreur de saisie, car une valeur négative décrit un retrait ou une marge intérieure plutôt qu’une bordure extérieure.
Quels formats de couleur puis-je fournir ?
Vous pouvez utiliser toute étiquette de couleur non vide, notamment un nom CSS, une notation hexadécimale ou un jeton propre à votre flux. La valeur est conservée sans interprétation.
Combien coûte un calcul par API ?
Chaque requête API coûte $0.002. Le calcul convient aussi à l’exécuteur du navigateur, puisqu’il ne nécessite aucun accès au réseau.
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/add-border \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"width":1200,"height":800,"border_width":24,"color":"#1d4ed8"}'const res = await fetch("https://api.kit.forhosting.com/image/add-border", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"width": 1200,
"height": 800,
"border_width": 24,
"color": "#1d4ed8"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/image/add-border",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"width": 1200,
"height": 800,
"border_width": 24,
"color": "#1d4ed8"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/image/add-border", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"width":1200,"height":800,"border_width":24,"color":"#1d4ed8"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"width":1200,"height":800,"border_width":24,"color":"#1d4ed8"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/image/add-border", 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
{
"width": 1200,
"height": 800,
"border_width": 24,
"color": "#1d4ed8"
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "image.add_border",
"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. |