J'ai l'obligation de convertir PDF pages en images. Il y a une image d'arrière-plan avec du texte écrit, donc lorsque je l'enregistre en tant qu'image, seule l'image d'arrière-plan est enregistrée.
Existe-t-il un logiciel disponible pour la même page afin de convertir une page complète en image?
Installez imagemagick .
Utilisation d'un terminal sur lequel se trouve le PDF:
Pour le document complet:
convert -density 150 input.pdf -quality 90 output.png
Pour une seule page:
convert -density 150 input.pdf[666] -quality 90 output.png
Par lequel:
PNG, JPG ou (virtuellement) n’importe quel autre format d’image peuvent être choisis.
-density xxx
définira le DPI sur xxx
(les valeurs communes sont 150 et 300).
-quality xxx
définira la compression sur xxx
pour les formats de fichier PNG, JPG et MIFF (100 signifie pas de compression).
[666]
convertira uniquement la 667ème page en PNG (numérotation basée sur zéro, donc [0]
est la 1ère page).
Toutes les autres options (telles que le rognage, les niveaux de gris, etc.) peuvent être consultées sur le site Web de Image Magic .
Vous pouvez utiliser pdftoppm
pour convertir un PDF en un fichier PNG:
pdftoppm input.pdf outputname -png
Cela produira chaque page dans le PDF en utilisant le format outputname-01.png
, avec 01
comme index de la page.
pdftoppm input.pdf outputname -png -f {page} -singlefile
Remplacez {page}
par le numéro de page. Il est indexé à 1, donc -f 1
serait la première page.
La résolution par défaut pour cette commande est de 150 DPI. Si vous l'augmentez, le fichier sera plus volumineux et plus détaillé.
Pour augmenter la résolution du fichier PDF converti, ajoutez les options -rx {resolution}
et -ry {resolution}
. Par exemple:
pdftoppm input.pdf outputname -png -rx 300 -ry 300
IIRC GIMP est capable d’utiliser des PDF, c’est-à-dire de les convertir en images. Donc, si vous voulez éditer les images tout de suite, GIMP est votre ami.
La réponse actuellement acceptée fait le travail mais donne un résultat dont la taille est plus grande et souffre d'une perte de qualité.
La méthode dans la réponse donnée ici donne un résultat dont la taille est comparable à celle de l'entrée et qui ne souffre pas d'une perte de qualité.
TLDR - Utilisez pdfimages
name__: pdfimages -j input.pdf output
Citer la réponse liée:
Ce que vous entendez par "perte de qualité" n'est pas clair. Cela pourrait signifier beaucoup de choses différentes. Pourriez-vous poster des exemples pour illustrer? Peut-être couper la même section des versions de mauvaise qualité et de bonne qualité (en tant que PNG pour éviter une perte de qualité supplémentaire).
Peut-être devez-vous utiliser
-density
pour effectuer la conversion à un dpi plus élevé:convert -density 300 file.pdf page_%04d.jpg
(Vous pouvez préfixer
-units PixelsPerInch
ou-units PixelsPerCentimeter
si nécessaire. Ma copie est définie par défaut sur ppi.)Mise à jour: Comme vous l'avez fait remarquer,
gscan2pdf
(votre façon de l'utiliser) est juste un wrapper pourpdfimages
(from poppler =).pdfimages
ne fait pas la même chose queconvert
quand on lui donne un PDF en entrée.
convert
prend le PDF, le restitue avec une résolution et utilise le bitmap résultant comme image source.
pdfimages
cherche dans le PDF des images bitmap incorporées et les exporte dans un fichier. Il ignore simplement les commandes de dessin textuelles ou vectorielles du PDF.En conséquence, si vous avez un PDF qui n'est qu'un encapsuleur autour d'une série de bitmaps,
pdfimages
fera beaucoup mieux pour les extraire, car il vous permet d'obtenir les données brutes à leur taille d'origine. Vous voudrez probablement aussi utiliser l'option-j
pourpdfimages
name__, car un PDF peut contenir des données JPEG brutes. Par défaut,pdfimages
convertit tout au format PNM et la conversion de JPEG> PPM> JPEG est un processus avec perte.Alors, essayez
pdfimages -j file.pdf page
Vous pouvez suivre ou non cette étape avec une étape
convert
to.jpg
(en fonction du format d'image utilisé par PDF).J'ai essayé cette commande sur un PDF que j'avais créé moi-même à partir d'une séquence d'images JPEG. Les images JPEG extraites étaient octet par octet identiques aux images source. Vous ne pouvez pas obtenir une qualité supérieure à celle.
Si vos fichiers PDF sont numérisés, les images sont déjà stockées dans le cadre de pdf. vous aurez simplement besoin de les extraire avec pdfimages
:
pdfimages my-file.pdf prefix
Pour obtenir une seule page à partir de gm convert, ajoutez [N] (avec N le numéro de page commençant à 0) au nom PDF, à savoir gm convert foo.pdf[11] out.png
pour obtenir la 12e page à partir du PDF.
Pour pdftoppm
, utilisez -f N -singlefile
, où N est le numéro de page commençant à 1, c'est-à-dire pdftoppm -f 12 -singlefile foo.pdf out
pour le même résultat. Il semble ajouter toujours ".png" au nom du fichier de sortie et il n’ya aucun moyen d’arrêter cela.
Vous pouvez utiliser convert et spécifier une densité plus élevée à l'aide de l'option -density
.
par exemple. convert -d 300 foo.pdf bar.png
Master PDF Editor (version 2.2) propose cette option. Ouvrez le fichier PDF, puis sélectionnez Fichier> Exporter vers> Images. Il présente une boîte de dialogue dans laquelle vous pouvez définir différentes options pour la sortie. Extrêmement utile. J'espère que cette information aide.
Si vous souhaitez uniquement convertir une page spécifique d'un PDF en un fichier PNG, vous pouvez diriger pdftk
vers convert
( décrit ci-dessus ) comme suit:
pdftk document.pdf cat 12 output - | convert - document-page-12.png
PDF Mod permet également d'exporter des images de toutes les pages ou de pages individuelles de fichiers PDF.