Extrayez la première et la dernière page d’un PDF
Indiquez qu'un PDF compte 12 pages et obtenez les pages 1 et 12, dans cet ordre, pour former un fichier de deux pages. Idéal pour garder la couverture et la page de signatures d'un long rapport sans calculer la dernière page. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Exemple résolu
- Nombre de pages
- 12
- Nombre de pages
- 2
- Nombre de pages source
- 12
- Pages extraites
- 1, 12
- Type de contenu
- application/pdf
L’extracteur de première et dernière pages PDF transforme le nombre connu de pages d’un document en une instruction d’extraction exacte et déterministe. Indiquez le total : il repère la page 1 et la page finale, puis renvoie un manifeste de PDF à deux pages avec un nom de fichier stable et un type de média. Le document doit comporter au moins deux pages, car un fichier d’une page ne présente pas deux limites distinctes. Ce résultat convient lorsqu’une autre étape connaît déjà le total et exige une sélection sans ambiguïté pour une opération PDF ultérieure.
Conservez les deux pages qui encadrent le document
Les longs PDF placent souvent leurs informations d’encadrement les plus utiles à leurs deux extrémités. La première page peut contenir une couverture, un titre, l’identité d’un compte, une période de rapport ou une référence de dépôt, tandis que la dernière peut présenter des signatures, une approbation, des totaux, des annexes ou des marques d’enregistrement. Cette capacité formalise la conservation de ces deux pages limites sans vous obliger à calculer séparément le dernier numéro.
Fournissez le nombre total : le résultat désigne la page source 1 et celle dont le numéro correspond à ce total. Le manifeste décrit toujours un PDF de deux pages dans l’ordre original, page initiale puis page finale. Il fournit également le type de média PDF et un nom de téléchargement prévisible, facile à transmettre à un processus de création de fichier.
Le document d’origine reste intact. Fondée uniquement sur les positions, la sélection n’inspecte, ne classe, ne résume et ne réinterprète aucun contenu.
Maîtrisez la validation et la numérotation
La numérotation commence à un, comme dans les outils PDF habituels : la page d’ouverture porte le numéro 1, et non 0. Les fractions, chaînes numériques, valeurs absentes, tableaux et objets sont refusés au lieu d’être convertis silencieusement. Cette rigueur empêche une demande de paraître valable lorsque les métadonnées de sa source sont incorrectes.
Un PDF d’une seule page est également rejeté, puisque sa première et sa dernière page sont physiquement identiques alors que cette capacité garantit deux limites distinctes. Pour un document de 2 pages, les pages retenues sont 1 et 2 ; pour 300 pages, 1 et 300. La réponse indique le total de la source ainsi que le nouveau total de 2, ce qui évite au code suivant de deviner quel nombre décrit quel document.
Elle énumère aussi explicitement les pages sources afin que journaux, interfaces et traitements ultérieurs expliquent précisément la demande.
Exploitez le manifeste en toute sécurité dans un flux automatisé
Cette capacité est volontairement déterministe et bornée. Elle n’effectue aucune requête réseau, ne lit aucun secret, ne stocke aucun document et n’utilise ni heure courante ni valeur aléatoire. Un même total valide produit donc toujours le même manifeste.
Séparer la sélection du transfert est utile dans les outils de navigateur, les files d’attente et les systèmes d’audit où l’accès au fichier et les règles métier relèvent d’étapes différentes. Vérifiez que le total correspond au PDF reçu par l’étape de copie : une ancienne valeur pourrait désigner une page au-delà d’une version plus récente. La réponse ne modifie jamais la source ; définissez séparément la conservation du fichier produit.
Cas d’usage
Préparez la couverture et la page de signatures
Sélectionnez la couverture initiale et la page finale de signatures d’un contrat pour créer un dossier de contrôle compact.
Archivez les limites d’un rapport
Conservez la page de titre et la certification finale d’un long rapport sans calculer la dernière position dans le code.
Construisez un flux de traitement PDF
Convertissez le nombre de pages en sélection explicite de deux pages pour un copieur PDF placé en aval.
Questions fréquentes
Pourquoi les PDF d’une page sont-ils refusés ?
Dans un PDF d’une page, la première et la dernière sont identiques. Cette capacité exige deux pages sources distinctes.
Le PDF d’origine est-il modifié ?
Non. La réponse décrit de façon déterministe un nouveau PDF de deux pages et laisse la source intacte.
Puis-je fournir le total sous forme de chaîne ?
Les chaînes numériques et fractions sont refusées pour éviter toute ambiguïté.
Pourquoi ne garder que la première et la dernière page ?
Les longs PDF regroupent souvent leurs informations clés aux deux extrémités. La première page porte en général la couverture, le titre, le compte ou la période du rapport, et la dernière les signatures, validations, totaux ou mentions de dépôt.
Lit-il ce qui est écrit sur ces pages ?
Non. Le choix repose uniquement sur la position des pages : leur contenu n'est jamais examiné, classé ni résumé. La sélection reste la même, quel que soit le contenu des pages.
Outils associés
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/first-last-page-extract \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"page_count":12}'const res = await fetch("https://api.kit.forhosting.com/pdf/first-last-page-extract", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"page_count": 12
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/pdf/first-last-page-extract",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"page_count": 12
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/pdf/first-last-page-extract", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"page_count":12}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"page_count":12}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/pdf/first-last-page-extract", 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
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "pdf.first_last_page_extract",
"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. |
Notes techniques
Maîtrisez la validation et la numérotation
La valeur `page_count` doit être un entier fini supérieur ou égal à 2.
Exploitez le manifeste en toute sécurité dans un flux automatisé
Un flux courant obtient un nombre fiable pendant l’inspection du PDF, appelle cette capacité pour déterminer les limites, puis transmet `extracted_pages` au composant qui copie ces pages depuis les octets sources vers un nouveau PDF. L’automatisation par API coûte $0.002 par requête, et la logique pure fonctionne aussi dans le navigateur.
Questions techniques
Combien coûte la requête API ?
Chaque requête API coûte $0.002. La logique déterministe peut aussi s’exécuter dans le navigateur.
La numérotation commence-t-elle à zéro ou à un ?
Elle commence à un. La première page est 1 et la dernière correspond à `page_count`.