Convertisseur PDF en image
📍 Endpoint
POST /rest/content/thumbnail/{page}
Génère une vignette PNG de la page {page} d’un document PDF.
🔢 Paramètres d’URL
| Nom |
Type |
Obligatoire |
Contraintes |
Description |
page |
int |
Oui |
>= 1 |
Numéro de page à convertir |
📦 Corps de requête (JSON)
| Champ |
Type |
Obligatoire |
Défaut |
Description |
base64FileContent |
string |
Oui |
— |
Contenu du PDF encodé en base64 (sans préfixe data:...;base64,) |
Exemple (request)
{
"base64FileContent": "JVBERi0xLjQg..."
}
✅ Réponse — 200 OK
{
"pageCount": 1,
"format": "png",
"fileContent": "iVBORw0KGgoAAA..."
}
| Champ |
Type |
Description |
pageCount |
int |
Nombre total de pages du PDF |
format |
string |
Toujours "png" |
fileContent |
string |
Image PNG encodée en base64 de la page demandée |
⚠️ Erreurs
| Code |
Type |
Condition |
Exemple |
| 403 |
object |
Le paramètre d’URL page n’est pas un entier |
{ "errors": "url 'page' param is not an integer" } |
| 403 |
object |
base64FileContent n’est pas une chaîne |
{ "errors": "body 'base64FileContent' is not a string" } |
| 403 |
object |
base64FileContent est vide |
{ "errors": "Parameter string 'base64FileContent' cannot be empty" } |
| 400 |
object |
page < 1 |
{ "errors": "Parameter 'page' must be greater than 0" } |
| 400 |
object |
Type MIME introuvable |
{ "errors": "Could not get mime type from file content" } |
| 400 |
object |
Type MIME non autorisé |
{ "errors": "This type of file is not allowed : MimeType" } |
| 400 |
object |
Échec conversion PDF → PNG |
{ "errors": "Could not convert pdf to png : <detail>" } |
🧪 Exemple cURL
curl -X POST "https://<host>/rest/content/thumbnail/1" \
-H "Content-Type: application/json" \
-d '{"base64FileContent":"JVBERi0xLjQg..."}'
📝 Notes
- Fournir uniquement le flux base64 du PDF (sans en-tête
data:).
- Si le PDF possède
N pages, page doit être 1..N.
- La taille/qualité de la vignette dépend de la configuration serveur (ImageMagick/Ghostscript).