Question Convertir un PDF en niveaux de gris sur la ligne de commande dans FLOSS?


J'ai un fichier PDF en couleur et je vais l'imprimer et ensuite le photocopier en noir et blanc. Je voudrais savoir à quoi ça ressemble en N & B avant de le photocopier. Est-il possible de "mettre à l'échelle" un PDF sur la ligne de commande en utilisant un logiciel gratuit? J'utilise Ubuntu 9.10.


71
2018-02-04 11:16


origine




Réponses:


ImageMagick peut le faire.

convert -colorspace GRAY color.pdf gray.pdf

via ce email


31
2018-02-04 11:20



Cela réduit considérablement la qualité. La solution @goyinux est meilleure. - Johannes Weiss
Convertir verra effectivement le contenu du pdf. Donc, à moins que le pdf n'encapsule déjà que des images raster (par exemple, un document numérisé), cette approche est un grand non. - m000
Sauf si vous utilisez -density 400 -quality 100 paramètres - qui fonctionne bien - burtek
Vraiment, y a-t-il quelque chose d'ImageMagick ne peut pas faire? :) - BalinKingOfMoria
-density 400 -quality 100 crée des fichiers ÉNORMES. +1 pour la solution @ goyinux. - Stanimir Stoyanov


Meilleur:

gs \
 -sOutputFile=output.pdf \
 -sDEVICE=pdfwrite \
 -sColorConversionStrategy=Gray \
 -dProcessColorModel=/DeviceGray \
 -dCompatibilityLevel=1.4 \
 -dNOPAUSE \
 -dBATCH \
 input.pdf

126
2017-07-17 22:33



D'accord, cela donne de bien meilleurs résultats que la conversion, mais parfois cela fait tourner le pdf, ce qui est un peu agaçant! - tdc
Vous venez de réaliser que vous pouvez désactiver cela avec -dAutoRotatePages=/None - tdc
Je viens d'exécuter cette commande sur un PDF de 58 Mo qui était déjà en niveaux de gris (provenant d'un scanner) et la sortie résultante était de 10 Mo et était identique. Agréable! - Archie
Fonctionne bien sur Windows aussi! Supprimez simplement le `\` et mettez tout sur la même ligne. - ixe013
En fait, cela échoue avec cette erreur GPL Ghostscript 9.10: Unable to convert color space to Gray, reverting strategy to LeaveColorUnchanged. - jjmerelo


Voici un petit script qui, en plus de la conversion en niveaux de gris, peut concaténer plusieurs fichiers d’entrée. Pour utiliser le script, placez les lignes suivantes dans un fichier, par exemple "convert2gray.sh"

#!/bin/bash
gs -sOutputFile=converted.pdf -sDEVICE=pdfwrite -sColorConversionStrategy=Gray -dProcessColorModel=/DeviceGray -dCompatibiltyLevel=1.4 -dNOPAUSE -dBATCH $@

et le rendre exécutable

chmod +x convert2gray.sh

alors

./convert2gray.sh input1.pdf input2.pdf … lastinput.pdf

produira un seul PDF "convert.pdf", qui contient toutes les pages des fichiers d'entrée convertis en niveaux de gris.

J'ai dû imprimer plusieurs fichiers en niveaux de gris et trouvé le moyen le plus simple, car vous pouvez tout imprimer après une inspection avec une seule commande.


10
2017-12-13 17:43



FWIW, pdftk peut également concaténer des fichiers PDF. - user1338062