Je ne suis pas programmeur, mais j'aimerais apprendre à recadrer un PDF à l'aide de Ghostscript.
J'ai installé Ghostscript 9.01 sur ma machine.
Veuillez me guider étape par étape (à partir de l'invocation de Ghostscript) pour recadrer un PDF avec les coordonnées spécifiques.
Je suis encore nouveau sur Ghostscript.
Tout d'abord, notez que l'unité de mesure pour PDF est la même que pour PostScript: elle s'appelle un point [pt ].
72 points == 1 inch == 25.4 millimeters
En supposant que vous avez une taille de page A4. Les dimensions des médias sont alors:
595 points width == 210 millimeters
842 points height == 297 millimeters
En supposant que vous souhaitiez rogner:
left Edge: 24 points == 1/3 inch ~= 8.5 millimeters
right Edge: 36 points == 1/2 inch ~= 12.7 millimeters
top Edge: 48 points == 2/3 inch ~= 17.0 millimeters
bottom Edge: 72 points == 1 inch ~= 25.4 millimeters
Ensuite, votre ligne de commande Ghostscript est la suivante (sous Windows):
gswin32c.exe ^
-o cropped.pdf ^
-sDEVICE=pdfwrite ^
-c "[/CropBox [24 72 559 794]" ^
-c " /PAGES pdfmark" ^
-f uncropped-input.pdf
Ou sous Linux:
gs \
-o cropped.pdf \
-sDEVICE=pdfwrite \
-c "[/CropBox [24 72 559 794]" \
-c " /PAGES pdfmark" \
-f uncropped-input.pdf
Cependant, cela peut ne pas fonctionner de manière fiable pour tous les types de PDF [1] . Dans ces cas, vous devriez également essayer ces commandes:
gswin32c.exe ^
-o cropped.pdf ^
-sDEVICE=pdfwrite ^
-dDEVICEWIDTHPOINTS=595 ^
-dDEVICEHEIGHTPOINTS=842 ^
-dFIXEDMEDIA ^
-c "24 72 translate" ^
-c " 0 0 535 722 rectclip" ^
-f uncropped-input.pdf
ou
gs \
-o cropped.pdf \
-sDEVICE=pdfwrite \
-dDEVICEWIDTHPOINTS=595 \
-dDEVICEHEIGHTPOINTS=842 \
-dFIXEDMEDIA \
-c "24 72 translate" \
-c " 0 0 535 722 rectclip" \
-f uncropped-input.pdf
[^] : Pour être plus précis: cela ne fonctionnera pas pour les PDF qui accompagnent leur propre /CropBox
déjà défini à des valeurs spécifiques. Un sale hack qui consiste à changer la chaîne /CropBox
pour toutes les pages où l'on souhaite /cROPBoX
(ou changement de casse similaire) avec un éditeur de texte avant d'exécuter la commande GS ci-dessus. Le changement de casse "désarme" le paramètre cropbox (sans modifier aucun PDF invalident la table xref
existante)), il n'est donc plus pris en compte par PDF.