Cartes de visite par feuille
Ce calculateur transforme les dimensions de la feuille, de la carte finie et des gouttières en une grille d’impression exploitable.
Lancer gratuitement
Il indique les colonnes, les rangées, le total, l’espace occupé et l’espace restant, puis compare l’orientation normale à une rotation de 90 degrés. Utilisez partout la même unité afin d’obtenir un résultat valable avant l’imposition ou l’achat du papier.
Saisissez les dimensions du produit fini
Indiquez la largeur et la hauteur utiles de la feuille, puis celles d’une carte finie. Toutes les valeurs doivent employer la même unité. Si la presse ne peut pas imprimer jusqu’au bord, retirez d’abord ses marges non imprimables. Précisez la gouttière horizontale entre les colonnes et la gouttière verticale entre les rangées. Elles ne sont comptées qu’entre deux cartes voisines : trois colonnes comportent deux intervalles. Pour intégrer le fond perdu, augmentez les dimensions de la carte jusqu’au format imposé ou ajoutez le dégagement nécessaire aux gouttières selon votre procédé. Des tolérances explicites évitent de les compter deux fois et rendent le calcul vérifiable.
Lisez la comparaison des orientations
Le calculateur étudie deux grilles uniformes. La disposition normale place la largeur de la carte dans la largeur de la feuille ; la disposition tournée échange largeur et hauteur. Il détermine pour chacune le nombre entier maximal de colonnes et de rangées, sans jamais compter une carte partielle. La grille offrant le meilleur total est recommandée et l’orientation normale gagne en cas d’égalité. Les deux résultats restent disponibles afin que vous puissiez tenir compte du sens du papier ou de la finition. Les dimensions occupées comprennent les cartes et les gouttières internes. L’espace inutilisé correspond au reste à droite et en bas d’une grille alignée en haut à gauche.
Exploitez le résultat en production
Utilisez le total comme contrôle de capacité avant de commander le papier ou de préparer la coupe. Vérifiez que vos dimensions incluent le fond perdu, les repères et les dégagements exigés. Un massicot et une table numérique peuvent demander des espacements différents, tandis que le sens des fibres peut justifier une orientation moins productive. Multipliez le nombre de cartes par feuille par le nombre de feuilles pour obtenir le rendement théorique, puis ajoutez séparément les pertes de calage, de couleur et de finition. Aucun taux de gâche n’est supposé. Si aucune carte entière ne tient, le résultat est zéro ; les dimensions obligatoires nulles, négatives ou non finies sont refusées. L’API coûte $0.002 par requête et renvoie un JSON déterministe.
Cas d’usage
Préparer un tirage
Estimez le nombre de feuilles nécessaire avant de commander le papier.
Comparer les orientations
Vérifiez si la rotation de toutes les cartes améliore le rendement.
Contrôler l’espace de coupe
Ajoutez les gouttières horizontales et verticales, puis examinez l’espace restant.
Questions fréquentes
Quel est le prix du calculateur ?
Il est gratuit dans le navigateur et coûte $0.002 par requête API.
Puis-je utiliser des pouces ?
Oui. Choisissez toute unité, à condition de l’employer pour toutes les dimensions.
Tourne-t-il certaines cartes pour combler les vides ?
Non. Il compare deux grilles uniformes, entièrement normales ou entièrement tournées.
Les gouttières sont-elles ajoutées aux bords ?
Non. Elles existent seulement entre les cartes ; retirez les marges extérieures séparément.
Comment inclure le fond perdu ?
Saisissez le format imposé complet ou ajoutez le dégagement aux gouttières selon votre imprimeur.
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/doc/business-cards-per-sheet \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"sheet_width":210,"sheet_height":297,"card_width":85,"card_height":55}'const res = await fetch("https://api.kit.forhosting.com/doc/business-cards-per-sheet", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"sheet_width": 210,
"sheet_height": 297,
"card_width": 85,
"card_height": 55
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/doc/business-cards-per-sheet",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"sheet_width": 210,
"sheet_height": 297,
"card_width": 85,
"card_height": 55
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/doc/business-cards-per-sheet", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"sheet_width":210,"sheet_height":297,"card_width":85,"card_height":55}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"sheet_width":210,"sheet_height":297,"card_width":85,"card_height":55}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/doc/business-cards-per-sheet", 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
{
"sheet_width": 210,
"sheet_height": 297,
"card_width": 85,
"card_height": 55
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "doc.business_cards_per_sheet",
"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 | 25 |
max_pages | 200 |
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. |