Convertir un EPUB en PDF
Cette capacité transforme un livre numérique au format EPUB en PDF paginé. Le texte fluide de l’EPUB est mis en pages fixes, chapitres et images inclus, pour lire l’ouvrage sur un écran qui ne gère pas ce format, l’archiver proprement ou l’imprimer au format A4.
Exécuter en ligne
Exécutez cette tâche sur nos serveurs, avec votre compte. Les outils gratuits tournent dans votre navigateur ; celui-ci est facturé sur votre solde KIT au prix affiché ci-dessus.
De la page qui coule à la page fixe
L’EPUB est conçu pour les liseuses : son texte s’adapte à la taille de l’écran, sans pagination fixe. Pratique pour lire, mais gênant dès qu’on veut imprimer, annoter à la main, ou simplement ouvrir le livre sur un appareil qui ignore ce format. Le PDF apporte des pages stables et numérotées : le contenu se fige dans une mise en page constante, identique d’un écran à l’autre. On passe d’un flux réajustable à un document que l’on feuillette et imprime comme un vrai livre.
Ce qui est conservé
La conversion suit l’ordre des chapitres, reprend les titres, le corps de texte et les images intégrées, et produit un PDF paginé de bout en bout. La typographie est rendue proprement, accents et ligatures compris. Le résultat convient pour lire hors ligne, constituer une archive lisible partout, ou tirer sur papier un manuel, un mémoire ou un recueil que l’on préfère avoir sous la main plutôt que sur une liseuse.
Fonctionnement et tarif
Vous transmettez le fichier EPUB, une tâche est créée, vous récupérez le PDF paginé. Le prix est de $0.052 par requête, plus $0.003 par page produite, en dollars US. Cette capacité est en version bêta et en cours de déploiement : son fonctionnement et son tarif sont arrêtés, mais elle n’accepte pas encore d’exécutions. Le règlement se fera par PayPal, sans abonnement, et le rendu décrit ici est celui qui sera livré.
Cas d’usage
Manuel à imprimer
Thomas Rousseau convertit un manuel technique acheté en EPUB pour l’imprimer et l’annoter en atelier. La version paginée se tire au format A4, chapitre après chapitre.
Mémoire à archiver
Camille Moreau transforme son mémoire diffusé en EPUB en PDF, format d’archivage universel qu’elle dépose dans son dossier et rouvre sur n’importe quel appareil.
Lecture hors liseuse
Sophie Nguyen n’a pas de liseuse à portée : elle convertit son EPUB en PDF pour le lire confortablement sur son ordinateur, avec une pagination stable.
Questions fréquentes
La pagination est-elle fixe dans le PDF ?
Oui. Le texte fluide de l’EPUB est figé en pages stables et numérotées, identiques d’un écran à l’autre. C’est ce qui rend le résultat imprimable et annotable, contrairement au format d’origine.
Les images et chapitres du livre sont-ils conservés ?
Oui : l’ordre des chapitres, les titres et les images intégrées sont repris dans le PDF. L’ouvrage se feuillette de bout en bout comme un document paginé classique.
Un EPUB protégé par des verrous DRM fonctionne-t-il ?
Non. Un fichier verrouillé par une protection anticopie ne peut pas être converti : nous ne contournons aucun verrou. La conversion s’applique aux EPUB que vous êtes libre de manipuler.
Peut-on déjà lancer une conversion EPUB ?
Pas encore : elle est en bêta et en déploiement. La fonction et le prix sont fixés, mais elle n’accepte pas encore d’exécutions. Nous préférons l’annoncer franchement plutôt que de promettre une mise en service immédiate.
Combien coûte la conversion d’un livre ?
$0.052 par requête, plus $0.003 par page, en dollars US. Un ouvrage se chiffre donc selon son nombre de pages. Paiement par PayPal, sans abonnement, facture sur demande.
Mon fichier est-il confidentiel ?
Oui. La conversion est automatisée, l’échange chiffré, et le livre n’est conservé que le temps de produire le PDF que vous téléchargez, avant d’être supprimé de nos serveurs.
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/epub-to-pdf \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"input":"…"}'const res = await fetch("https://api.kit.forhosting.com/doc/epub-to-pdf", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"input": "…"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/doc/epub-to-pdf",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"input": "…"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/doc/epub-to-pdf", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"input":"…"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"input":"…"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/doc/epub-to-pdf", 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
{
"input": "…"
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "doc.epub_to_pdf",
"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. |
413 | input_too_large | Entrée trop volumineuse : consultez la limite de taille de cette capacité. |