Insérez une page blanche à l’endroit voulu dans un PDF
Insérez une page blanche dans un PDF existant sans reconstruire le document manuellement.
Lancer gratuitement
Tout se passe dans votre navigateur : gratuit, sans envoi de vos données.
Fournissez le PDF et une position numérotée à partir de 1 : l’outil y place une page vierge ayant les mêmes dimensions que celle située à cet endroit. Pour l’ajouter à la fin, indiquez la position qui suit la dernière page actuelle. L’opération est déterministe, préserve l’ordre initial et rejette clairement toute position inexistante.
Choisissez précisément la position d’insertion
Les positions commencent à 1, car elles indiquent où la nouvelle page apparaîtra pour la personne qui lira le document final. La position 1 insère une feuille blanche avant la première page actuelle. La position 2 la place entre la première et la deuxième. Dans un document de cinq pages, la position 6 ajoute une feuille après la cinquième. Ce sont les seules positions valides : le minimum est 1 et le maximum correspond au nombre actuel de pages augmenté de un. Cette règle explicite empêche une demande ambiguë de produire discrètement un document dont la feuille serait mal placée. Si la position est nulle, négative, fractionnaire ou supérieure à la position d’ajout finale, la requête renvoie une erreur de saisie et laisse la source intacte. Avant d’automatiser un processus, comptez les pages et calculez la position d’après le document réellement envoyé. Le résultat indique la position insérée et le nouveau total afin que vous puissiez vérifier la transformation.
Comment la page blanche obtient son format
La page insérée utilise la zone de média effective de la page qui occupe la position demandée. Une insertion avant une page Lettre en portrait crée donc une feuille blanche de même format, tandis qu’une page suivante en paysage ou sur mesure transmet ses dimensions. Lors d’un ajout en fin de document, aucune page suivante ne peut servir de référence : la nouvelle feuille copie alors le format de la dernière page existante. Ce comportement convient particulièrement aux PDF mixtes, notamment les dossiers numérisés, supports de présentation, plans et rapports assemblés. La feuille est volontairement vide : elle ne contient ni flux de contenu, ni annotation, ni champ de formulaire, ni marque copiée. Seule sa géométrie est reprise. La réponse fournit également la largeur et la hauteur calculées en points PDF, ce qui vous permet de confirmer les dimensions retenues. Les pages sources gardent leur ordre et leur contenu.
Préparez une entrée compatible et contrôlez le résultat
Fournissez un PDF classique sous forme de texte PDF brut ou d’URI de données PDF en base64. Cette version bêta rejette volontairement les documents utilisant un flux de références croisées, plutôt que de deviner une structure qu’elle ne pourrait pas reconstruire sûrement. L’analyseur lit le catalogue et l’arborescence des pages, parcourt les nœuds imbriqués, résout les zones de média héritées, insère la nouvelle référence dans le bon parent, actualise les décomptes concernés et reconstruit une table classique valide. Aucun réseau, horloge, hasard, stockage ou modèle n’intervient. Après traitement, vérifiez le nombre de pages, la position, la largeur et la hauteur renvoyés, puis enregistrez ou transmettez le PDF. Pour une automatisation, testez d’abord des fichiers représentatifs. Si un flux de références croisées est refusé, convertissez le fichier en PDF classique avec un utilitaire fiable. Chaque requête API coûte $0.002 ; la même opération déterministe fonctionne aussi dans le navigateur.
Cas d’usage
Ajouter une feuille de séparation
Insérez une page vierge entre les sections d’un rapport assemblé afin de séparer ou d’annoter les exemplaires imprimés.
Rétablir l’alignement recto verso
Ajoutez une feuille blanche à l’endroit voulu pour qu’un chapitre ou formulaire commence sur le côté prévu en impression recto verso.
Réserver un espace aux signatures ou notes
Placez une feuille vierge de même taille près des pièces justificatives sans recréer ni redimensionner le PDF initial.
Questions fréquentes
Quelles positions sont valides ?
Utilisez un entier compris entre 1 et le nombre actuel de pages augmenté de un. La dernière valeur ajoute la feuille à la fin.
Quel format de page est utilisé ?
La feuille reprend la zone de média effective de la page à la position indiquée, ou celle de la dernière page lors d’un ajout final.
La nouvelle page contient-elle quelque chose ?
Non. Elle possède les dimensions choisies, sans contenu, annotation, champ de formulaire ni élément graphique copié.
Que se passe-t-il si la position est hors limites ?
La requête renvoie une erreur de saisie et ne produit aucun PDF modifié.
Combien coûte la requête API ?
Chaque requête coûte $0.002.
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/pdf/insert-blank-page \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"pdf":"https://ejemplo.com/documento.pdf","position":2}'const res = await fetch("https://api.kit.forhosting.com/pdf/insert-blank-page", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"pdf": "https://ejemplo.com/documento.pdf",
"position": 2
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/pdf/insert-blank-page",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"pdf": "https://ejemplo.com/documento.pdf",
"position": 2
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/pdf/insert-blank-page", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"pdf":"https://ejemplo.com/documento.pdf","position":2}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"pdf":"https://ejemplo.com/documento.pdf","position":2}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/pdf/insert-blank-page", 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
{
"pdf": "https://ejemplo.com/documento.pdf",
"position": 2
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "pdf.insert_blank_page",
"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. |