La limite complète de la page
Elle définit le support physique. Le contenu situé à l’extérieur peut être écarté sans modifier la page PDF prévue.
La MediaBox décrit la limite physique complète de la page. La CropBox décrit la zone qu’un lecteur affiche ou imprime normalement.
Modifier la CropBox change en général ce qui est visible, pas ce qui reste dans le PDF.
Voir le test de récupération ↓Ces zones sont des coordonnées dans l’espace utilisateur par défaut. Elles guident affichage, impression, coupe et prépresse ; ce ne sont pas cinq calques de contenu indépendants.
Elle définit le support physique. Le contenu situé à l’extérieur peut être écarté sans modifier la page PDF prévue.
Elle indique aux lecteurs conformes quel rectangle afficher ou imprimer. Elle impose un masque sans réécrire le flux de contenu.
Elle peut inclure une surface d’image supplémentaire pour absorber les variations de coupe et de finition.
La TrimBox décrit le format fini prévu ; l’ArtBox délimite le contenu jugé significatif par le créateur.
Dans notre exemple au format Letter, la MediaBox est restée fixe tandis que la CropBox s’est déplacée vers l’intérieur. Le flux de contenu et les ressources intégrées sont restés dans le fichier.
MediaBox [0 0 612 792]
CropBox [0 0 612 792]MediaBox [0 0 612 792]
CropBox [55.08 63.36 556.92 728.64]Le tableau PDF stocke les coordonnées inférieure gauche et supérieure droite. Doruni présente des marges, lit la CropBox existante puis écrit le rectangle obtenu avec setCropBox(). Il ne modifie pas la MediaBox et ne réalise aucun caviardage.
Nous avons créé un PDF inoffensif avec des repères rouges hors de la zone voulue. Après recadrage, ils ont disparu du rendu. En remettant la CropBox sur la MediaBox, les mêmes repères sont réapparus.

Les repères extérieurs sont visibles.

Les repères extérieurs sont masqués.

Les repères d’origine reviennent.
Les trois exemples ont conservé la même MediaBox après recadrage.
pdftotext a retrouvé le repère synthétique extérieur dans chaque PDF recadré, alors que le rendu normal le masquait.
La remise à zéro de CropBox a produit, pour les trois exemples, une première page avec un SSIM de 1,0 face à l’original.
Chaque PDF recadré est devenu légèrement plus lourd : l’enregistrement du dictionnaire modifié a ajouté un faible coût de sérialisation, tout en conservant contenu et ressources.
| Exemple | État | Octets | MediaBox (pt) | CropBox x, y, l×h (pt) |
|---|---|---|---|---|
| PDF-TEXT | Original | 1,3 KB | 612×792 | 0, 0, 612×792 |
| PDF-TEXT | Recadré | 1,4 KB | 612×792 | 55.08, 63.36, 501.84×665.28 |
| PDF-TEXT | Restauré | 1,3 KB | 612×792 | 0, 0, 612×792 |
| PDF-IMAGE | Original | 48,3 KB | 595.28×841.89 | 0, 0, 595.28×841.89 |
| PDF-IMAGE | Recadré | 48,3 KB | 595.28×841.89 | 59.53, 75.77, 476.22×690.35 |
| PDF-IMAGE | Restauré | 48,3 KB | 595.28×841.89 | 0, 0, 595.28×841.89 |
| PDF-MULTI | Original | 2,4 KB | 612×792 | 0, 0, 612×792 |
| PDF-MULTI | Recadré | 2,5 KB | 612×792 | 48.96, 55.44, 514.08×681.12 |
| PDF-MULTI | Restauré | 2,4 KB | 612×792 | 0, 0, 612×792 |
Méthode : Trois PDF créés pour le projet—texte, image intégrée et formats de page mixtes—ont été recadrés avec la même opération getCropBox()/setCropBox() que Doruni. Les zones ont été vérifiées avec pdfinfo -box, le rendu avec Poppler et la présence de texte avec pdftotext.
Les lecteurs et flux d’impression peuvent interpréter les zones différemment. Vérifiez le résultat là où le fichier sera réellement utilisé.
Les utilisateurs techniques peuvent lancer pdfinfo -box file.pdf et comparer MediaBox à CropBox.
Si une information doit être irrécupérable, utilisez un caviardage vérifié puis contrôlez indépendamment le fichier final.
Doruni modifie localement la zone visible. Votre fichier n’est pas envoyé, mais l’opération reste un recadrage, pas un caviardage ni une compression.