PDF en séquence d’images
Ce générateur de noms pour séquences d’images PDF produit la liste exacte et ordonnée qu’un traitement page par page peut utiliser.
Lancer gratuitement
Indiquez le nombre de pages du PDF et choisissez PNG ou JPG : vous obtenez un nom prévisible pour chaque page. La numérotation ajoute les zéros initiaux nécessaires afin de préserver l’ordre lors d’un tri textuel. Aucun PDF n’est téléversé, analysé ou converti. Vous pouvez ainsi préparer une exportation, contrôler ses résultats et organiser les tâches suivantes avant même que les images existent.
Planifiez toute la séquence avant la conversion
Les chaînes de conversion PDF doivent souvent connaître les sorties attendues avant le lancement du rendu. Vous pouvez devoir réserver des clés de stockage, créer une ligne de base de données par page ou vérifier qu’aucune image ne manque. Saisissez le nombre de pages, puis sélectionnez PNG ou JPG pour recevoir un manifeste complet. Chaque nom commence par page-, se poursuit par le numéro de page compté à partir de un et se termine par l’extension choisie. Le document lui-même n’est pas nécessaire, car cet outil planifie les noms sans lire ni rendre le PDF. Le résultat est donc rapide, reproductible et utilisable en amont du traitement. Un document de douze pages donne des noms allant de page-01 à page-12 ; pour plusieurs centaines de pages, la largeur numérique augmente automatiquement. Le nombre de pages et le format sont également renvoyés afin qu’un autre service puisse vérifier la demande.
Conservez le bon ordre dans tous les stockages
Les noms sans remplissage créent un problème discret : un tri textuel ordinaire place page-10 avant page-2. Cette capacité l’évite en calculant la largeur du dernier numéro, puis en ajoutant des zéros à gauche de chaque valeur. Neuf pages nécessitent un chiffre, douze en nécessitent deux et cent vingt en nécessitent trois. La liste renvoyée reste ainsi dans l’ordre, tout comme les fichiers affichés dans un stockage d’objets, une archive, un terminal ou un gestionnaire de fichiers. La numérotation commence à un, car elle correspond aux pages visibles par la personne qui consulte le PDF et non à des indices informatiques commençant à zéro. L’extension choisie est appliquée partout et seuls png et jpg sont acceptés. Tout autre choix est refusé afin d’éviter un manifeste incompatible et de signaler une faute avant une conversion plus coûteuse.
Faites du manifeste un contrat déterministe
Le résultat peut relier des étapes indépendantes d’un flux documentaire. Un moteur de conversion attribue un nom à chaque page, une étape de transfert réserve les clés correspondantes et un contrôle compare les fichiers créés à la liste prévue. L’algorithme n’utilise ni réseau, ni heure courante, ni hasard, ni métadonnées du document : les mêmes entrées donnent toujours la même sortie. Cette stabilité facilite les tests automatisés, les reprises de tâches, les builds reproductibles et les pistes d’audit. La limite de dix mille pages empêche une requête erronée de créer un tableau illimité ou de surcharger le navigateur. Les nombres invalides et les formats non pris en charge produisent une erreur explicite au lieu d’être corrigés en silence. L’appel par API coûte $0.002, et la même logique fonctionne aussi dans le navigateur. Cet outil fournit uniquement les noms prévus ; une autre capacité doit produire les images à comparer ensuite au manifeste.
Cas d’usage
Réserver des clés de stockage
Créez tous les noms attendus avant que le moteur de rendu transfère les images des pages.
Contrôler une conversion complète
Comparez le dossier de sortie au manifeste pour repérer les pages absentes ou inattendues.
Créer des tâches par page
Préparez une tâche déterministe par page PDF avec une destination PNG ou JPG stable.
Questions fréquentes
Cette capacité convertit-elle le PDF ?
Non. Elle génère les noms prévus pour une conversion page par page, sans lire ni rendre le PDF.
Quels formats d’image sont acceptés ?
Les extensions acceptées sont png et jpg. Tout autre format produit une erreur d’entrée invalide.
Pourquoi certains numéros commencent-ils par des zéros ?
Les zéros uniformisent leur largeur et conservent l’ordre des pages lors d’un tri textuel.
La numérotation commence-t-elle à zéro ou à un ?
Elle commence à un et se termine au nombre indiqué, comme la numérotation habituellement présentée au lecteur.
Quel est le prix d’une requête API ?
Une requête API coûte $0.002. Vous pouvez aussi exécuter la même logique déterministe dans le navigateur.
Quel est le nombre maximal de pages ?
Le maximum est de dix mille pages, ce qui limite la mémoire utilisée et la taille de la liste renvoyée.
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/to-image-sequence \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"page_count":12,"format":"png"}'const res = await fetch("https://api.kit.forhosting.com/pdf/to-image-sequence", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"page_count": 12,
"format": "png"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/pdf/to-image-sequence",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"page_count": 12,
"format": "png"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/pdf/to-image-sequence", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"page_count":12,"format":"png"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"page_count":12,"format":"png"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/pdf/to-image-sequence", 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
{
"page_count": 12,
"format": "png"
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "pdf.to_image_sequence",
"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_items | 10000 |
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. |