J'essaie d'utiliser le programme de ligne de commande convert
pour prendre un PDF dans une image (JPEG ou PNG). Voici l' un des PDF que j'essaie de convertir.
Je veux que le programme supprime l'excès d'espace blanc et renvoie une image de qualité suffisamment élevée pour que les exposants puissent être lus facilement.
Ceci est ma meilleure tentative actuelle . Comme vous pouvez le voir, le recadrage fonctionne bien, j'ai juste besoin d'affiner un peu la résolution. Voici la commande que j'utilise:
convert -trim 24.pdf -resize 500% -quality 100 -sharpen 0x1.0 24-11.jpg
J'ai essayé de prendre les décisions conscientes suivantes:
- le redimensionner plus grand (n'a aucun effet sur la résolution)
- rendre la qualité aussi élevée que possible
- utiliser le
-sharpen
(j'ai essayé une gamme de valeurs)
Toutes les suggestions s'il vous plaît sur l'obtention de la résolution de l'image dans le PNG / JPEG final plus élevé seraient grandement appréciées!
pdf
imagemagick
JBWhitmore
la source
la source
sips
, le "système de traitement d'image scriptable". Il s'agit d'un éditeur d'images en ligne de commande intégré à macOS, qui fonctionne sur les PDF et de nombreux autres types d'images.Réponses:
Il semble que les travaux suivants:
Il en résulte l'image de gauche . Comparez cela au résultat de ma commande d'origine ( l'image à droite ):
(Pour vraiment voir et apprécier les différences entre les deux, faites un clic droit sur chacun et sélectionnez "Ouvrir l'image dans un nouvel onglet ..." .)
Gardez également à l'esprit les faits suivants:
Donc, pas besoin de redimensionner; ajoutez le
-density
drapeau. La valeur de densité 150 est bizarre - essayer une plage de valeurs donne une image plus mauvaise dans les deux sens!la source
density
paramètre est un peu spécial en ce que doit venir avant le fichier d'entrée. Comme PDF est un format de fichier vectoriel qui n'a pas (beaucoup) de notion de pixels, il dit quelque chose comme "la page est de 8 pouces sur 12 pouces". Si vous voulez un pixel, vous utilisez ledensity
paramètre pour lui dire, combien de pixels par pouce vous voulez obtenir dans la sortie. Par exemple. avec 150, vous obtiendrez 8x150 = 1200 par 12x150 = 1800 pixels dans l'image résultante. C'est également la quantité de pixels sur laquelle les paramètres de netteté, de contraste, de compression, etc. fonctionnent.-flatten
.-density
et-flatten
pour réduire la taille d'un pdf (à un autre pdf). L'-flatten
option aide vraiment beaucoup à réduire la taille totale. Dans mon cas, sans troubles visuels.-density
drapeau donnera probablement de plus mauvais résultats sur des valeurs plus élevées si la qualité de l'image de départ était inférieure à cela.Personnellement, j'aime ça.
C'est un peu plus du double de la taille du fichier, mais ça me semble mieux.
-density 300
définit le dpi auquel le PDF est rendu.-trim
supprime tous les pixels de bord qui sont de la même couleur que les pixels de coin.-quality 100
définit la qualité de compression JPEG sur la plus haute qualité.Des choses comme
-sharpen
ne fonctionnent pas bien avec le texte car elles annulent les choses que votre système de rendu de police a fait pour le rendre plus lisible.Si vous voulez vraiment le faire exploser, utilisez redimensionner ici et peut-être une valeur dpi plus élevée de quelque chose comme
targetDPI * scalingFactor
ça rendra le PDF à la résolution / taille que vous souhaitez.Les descriptions des paramètres sur imagemagick.org sont ici
la source
convert
comment saurons - nous combien de pages se convertit?-sharpen
. La qualité est bien meilleure qu'avec les valeurs par défaut et bien plus naturelle qu'avec-sharpen
.J'utilise
pdftoppm
sur la ligne de commande pour obtenir l'image initiale, généralement avec une résolution de 300 dpipdftoppm -r 300
, alors utilisez-laconvert
pour effectuer le découpage et la conversion PNG.la source
pdftoppm
peut également produire des fichiers JPEG et PNG.normalement j'extrais l'image intégrée avec 'pdfimages' à la résolution native, puis utilise la conversion d'ImageMagick au format requis:
cela génère le meilleur et le plus petit fichier de résultats.
Remarque: Pour les images intégrées JPG avec perte, vous avez dû utiliser -j:
Avec Poppler récent, vous pouvez utiliser -tout ce qui enregistre lossy en jpg et lossless en png
Sur la plate-forme Win peu fournie, vous avez dû télécharger un binaire récent (0.37 2015) «poppler-util» sur: http://blog.alivate.com.au/poppler-windows/
la source
pdftoppm
not withpdfimages
Je l'ai trouvé à la fois plus rapide et plus stable lors du traitement par lots de gros PDF en PNG et JPG pour utiliser la commande sous-jacente
gs
(aka Ghostscript) quiconvert
utilise.Vous pouvez voir la commande dans la sortie de
convert -verbose
et il y a quelques autres ajustements possibles (YMMV) qui sont difficiles / impossibles à accéder directement viaconvert
.Cependant, il serait plus difficile de couper et d'affûter avec
gs
, donc, comme je l'ai dit, YMMV!la source
Cela vous donne également de bons résultats:
la source
Utilisateur Linux ici: j'ai essayé l'
convert
utilitaire de ligne de commande (pour PDF en PNG) et je n'étais pas satisfait des résultats. J'ai trouvé que c'était plus facile, avec un meilleur résultat:pdftk file.pdf cat 3 output page3.pdf
GIMP
Resolution
de100
à300
ou600 pixel/in
GIMP
exportation au format PNG (changer l'extension du fichier en .png)Éditer:
Image ajoutée, comme demandé dans le
Comments
. Commande de conversion utilisée:convert -density 300 -trim struct2vec.pdf -quality 100 struct2vec.png
GIMP
: importé à 300 dpi (px / in); exporté en tant que niveau de compression PNG 3.Je n'ai pas utilisé GIMP sur la ligne de commande (re: mon commentaire, ci-dessous).
la source
convert
. J'ai seulement vu la partie de cette réponse mentionnerconvert
et votre question en lisant votre commentaire sur l'automatisation. Merci pour votre réponse plus tard sur ce fil, que j'ai combiné avec la solution à laquelle j'ai lié et résolu un problème différent que je rencontrais.Je n'ai vraiment pas eu un bon succès avec
convert
[mise à jour mai 2020: en fait: ça ne marche presque jamais pour moi], mais j'ai eu un EXCELLENT succès avecpdftoppm
. Voici quelques exemples de production d'images de haute qualité à partir d'un PDF:[Produit environ 25 Mo de fichiers par page] Exportez le format de fichier .tif non compressé à 300 DPI dans un dossier appelé "images", les fichiers étant nommés pg-1.tif , pg-2.tif , pg-3.tif , etc:
[Produit ~ 1 Mo de fichiers par page] Sortie au format .jpg à 300 DPI :
[Produit des fichiers de ~ 2 Mo par page] Sortie au format .jpg avec la plus haute qualité (moindre compression) et toujours à 300 DPI :
Pour plus d'explications, d'options et d'exemples, voir ma réponse complète ici:
/ubuntu/150100/extracting-embedded-images-from-a-pdf/1187844#1187844 .
En relation:
pdf2searchablepdf
] /ubuntu/473843/how-to-turn-a-pdf-into-a-text-searchable-pdf/1187881#1187881la source
Dans ImageMagick, vous pouvez faire du "suréchantillonnage". Vous spécifiez une grande densité, puis redimensionnez autant que vous le souhaitez pour la taille de sortie finale. Par exemple avec votre image:
Téléchargez l'image pour la voir en pleine résolution pour comparaison.
Je ne recommande pas d'enregistrer au format JPG si vous prévoyez de poursuivre le traitement.
Si vous souhaitez que la sortie soit de la même taille que l'entrée, redimensionnez-la à l'inverse du rapport de votre densité à 72. Par exemple, -densité 288 et -resize 25%. 288 = 4 * 72 et 25% = 1/4
Plus la densité est élevée, meilleure est la qualité résultante, mais le traitement prendra plus de temps.
la source
Une autre suggestion est que vous pouvez utiliser GIMP.
Il suffit de charger le fichier PDF dans GIMP-> enregistrer au format .xcf et vous pourrez alors faire ce que vous voulez sur l'image.
la source
J'utilise icepdf un moteur java pdf open source. Vérifiez la démo du bureau .
J'ai également essayé imagemagick et pdftoppm , pdftoppm et icepdf ont une haute résolution qu'imagemagick.
la source
Veuillez prendre note avant de voter contre, cette solution est pour Gimp utilisant une interface graphique, et non pour ImageMagick utilisant une ligne de commande, mais cela a parfaitement fonctionné pour moi comme alternative, et c'est pourquoi j'ai trouvé nécessaire de partager ici.
Suivez ces étapes simples pour extraire des images dans n'importe quel format à partir de documents PDF
C'est tout.
J'espère que ça aide
la source
Le fichier PNG que vous avez joint semble vraiment flou. Si vous devez utiliser un post-traitement supplémentaire pour chaque image que vous avez générée en tant qu'aperçu PDF, vous diminuerez les performances de votre solution.
2JPEG peut convertir le fichier PDF que vous avez joint en un joli JPG plus net et recadrer les marges vides en un seul appel:
la source
Utilisez cette ligne de commande:
Cela devrait convertir correctement le fichier comme vous l'avez demandé.
la source
Le script python suivant fonctionnera sur n'importe quel Mac (Snow Leopard et supérieur). Il peut être utilisé sur la ligne de commande avec des fichiers PDF successifs comme arguments, ou vous pouvez les insérer dans une action Exécuter le script Shell dans Automator et créer un service (Action rapide dans Mojave).
Vous pouvez définir la résolution de l'image de sortie dans le script.
Le script et une action rapide peuvent être téléchargés depuis github.
la source
Vous pouvez le faire dans LibreOffice Draw (qui est généralement préinstallé dans Ubuntu ):
la source
J'ai utilisé pdf2image . Une bibliothèque python simple qui fonctionne comme un charme.
Installez d'abord poppler sur une machine non Linux. Vous pouvez simplement télécharger le zip. Décompressez dans Program Files et ajoutez bin au chemin de la machine.
Après cela, vous pouvez utiliser pdf2image en classe python comme ceci:
Je ne suis pas bon avec python mais j'ai pu en faire un exe. Plus tard, vous pourrez utiliser l'exe avec le paramètre d'entrée et de sortie du fichier. Je l'ai utilisé en C # et les choses fonctionnent bien.
La qualité d'image est bonne. L'OCR fonctionne bien.
la source
C'est en fait assez facile à faire avec Aperçu sur un mac. Tout ce que vous avez à faire est d'ouvrir le fichier dans Aperçu et de l'enregistrer (ou d'exporter) au format png ou jpeg mais assurez-vous d'utiliser au moins 300 dpi en bas de la fenêtre pour obtenir une image de haute qualité.
la source