Come estrarre l'immagine dal file PDF


49

Attualmente uso il lettore PDF di Foxit e di recente ho scaricato un'immagine da Internet, ma si trova all'interno di un file PDF. Come estraggo questa immagine?

Il sistema operativo è Windows 7.


la tua estrazione di massima qualità sarà quella di estrarre in qualunque formato l'immagine sia già memorizzata nel pdf. (almeno penso che sia così che funzionano le immagini in pdf.)
Quack Quixote

Risposte:


4

Il modo rapido se non hai bisogno di una risoluzione pixel originale dell'immagine è semplicemente premere i pulsanti ALT e Stampa schermo. Quindi scegli incolla dove vuoi sempre l'immagine.

L'altro modo per preservare la risoluzione è aprire il PDF in un programma di modifica delle immagini come Adobe Photoshop e lavorare lì.


1
L'apertura di un documento PDF in Photoshop fa apparire la finestra di dialogo "Rasterizza formato PDF generico", quindi la risoluzione non può essere mantenuta. Testato con PS7. Le versioni più recenti di Photoshop sono diverse?
AffineMesh,

1
come hai detto, [alt] + [prnscr] non preserva la risoluzione in pixel originale (utilizza qualsiasi risoluzione utilizzata dallo schermo / monitor corrente).
Kurt Pfeifle,

1
@studiohack, @UserSuUserDo: Non solo perderai la risoluzione originale se usi [alt] + [prnscr], ma otterrai l'immagine completa del visualizzatore PDF come immagine. Questo può essere "abbastanza buono" per molti casi d'uso. Ma a volte vuoi che l'immagine sia incorporata solo nella pagina PDF. Qui pdfimages.exeè utile.
Kurt Pfeifle,

1
Oppure usa lo strumento di cattura integrato in W7 per acquisire l'area desiderata.
Moab,

71

Se scarichi XPDF per Windows ( qui ), troverai alcuni file .exe all'interno. Puoi eseguirli senza "installazione". Usa pdfimages.execosì:

pdfimages.exe -help

Questo visualizza la schermata di aiuto.

pdfimages.exe ^
    -j ^
    c:\path\to\your.pdf ^
    c:\path\to\where\you\want\images\prefix\

Questo estrae tutti i JPEG come prefisso-00N.jpg e tutte le altre immagini come prefisso-00N.ppm (Portable PixMap).

[ Modifica di ComFreek: notare la barra finale nel percorso di destinazione, che è importante se non si desidera estrarre tutte le immagini nella sua directory principale.] -
{ Modifica di KurtPfeifle: Non sono d'accordo con il commento di ComFreek, ma vado via spetta ai lettori testare e scoprire le differenze nei risultati stessi. Il mio parametro originale, non usando una barra finale, come ..\prefixprefisso i nomi delle immagini utilizzate per i file estratti.}

pdfimages.exe ^
    -j ^
    -f 11 ^
    -l 13 ^
    c:\path\to\your.pdf ^
    c:\path\to\where\you\want\images\prefix\

Come prima, ma limita l'estrazione dell'immagine alle pagine 11 ('f' = first) a 13 ('l' = last).


Aggiornare:

Nel frattempo preferisco la versione di Poppler dipdfimages - soprattutto da quando ha acquisito questa nuova funzionalità: aggiungi -listalla riga di comando per elencare (non estrarre) le immagini contenute nel PDF, oltre ad alcune delle loro proprietà. Esempio:

pdfimages -list -f 7 -l 8 ct-magazin-14-2012.pdf

  pagina num tipo larghezza altezza colore comp bpc enc interp ID oggetto
  -------------------------------------------------- -------------------
     7 0 immagine 581 838 rgb 3 8 jpeg n. 39 0
     7 1 immagine 4 4 ​​rgb 3 8 immagine n. 40 0
     7 2 immagine 314 332 rgb 3 8 jpx n. 44 0
     7 3 immagine 358 430 rgb 3 8 jpx no 45 0
     7 4 immagine 4 4 ​​rgb 3 8 immagine n. 46 0
     7 5 immagine 4 4 ​​rgb 3 8 immagine n. 47 0
     7 6 immagine 4 6 rgb 3 8 immagine n. 48 0
     7 7 immagine 596 462 rgb 3 8 jpx n. 49 0
     7 8 immagine 4 6 rgb 3 8 immagine n. 50 0
     7 9 immagine 4 4 ​​rgb 3 8 immagine n. 51 0
     7 10 immagine 8 10 rgb 3 8 immagine n. 41 0
     7 11 immagine 6 6 rgb 3 8 immagine n. 42 0
     7 12 immagine 113 27 rgb 3 8 jpx no 43 0
     8 13 immagine 582 839 grigio 1 8 jpeg n. 2080 0
     8 14 immagine 344 364 grigio 1 8 jpx n. 2079 0

Nota di nuovo: questa versione pdfimagesè quello Poppler (quello da XPDF non non (ancora) supportare questa nuova funzionalità?), E la versione deve essere v0.20.2 o più recente.


1
@harlev: Google per ImageMagick . Ha uno strumento a riga di comando che può convertire qualsiasi cosa in qualsiasi cosa venga chiamata convert. Disponibile per Linux, Windows, MacOS X e cosa hai. Caso d'uso più semplice per voi: convert some.ppm some.jpeg.
Kurt Pfeifle,

3
Nota: XPDF non è gestito attivamente come la libreria poppler che l'ha biforcuta qualche tempo fa. Poppler fornisce pdfimagesanche, e alcune persone potrebbero preferire usarlo.
MvG

1
@BurhanKhalid: i binari precostruiti sono qui: sourceforge.net/projects/poppler-win32
Kurt Pfeifle,

2
@KurtPfeifle Purtroppo quelli non contengono alcun file exe.
Chris,

3
So che questo è vecchio ma volevo solo condividere se qualcuno è alla ricerca di file binari di Windows, puoi scaricarlo
Aivan Monceller

8

Puoi provare a importare il PDF in Inkscape e lavorare da lì. Inkscape aprirà solo una pagina alla volta, ma ti darà il controllo completo sul contenuto della pagina. Sarai in grado di estrarre e manipolare la grafica vettoriale dal PDF abbastanza facilmente.

Tuttavia, se vuoi estrarre immagini raster dal PDF, sono abbastanza sicuro che pdfimagesXPDF sia più semplice (ma puoi ancora provare a usare Inkscape dopo aver appreso come estrarre immagini incorporate da file SVG ).


GIMP ( gimp.org ) è un altro strumento di progettazione grafica che può importare e manipolare PDF. Tuttavia, non sono sicuro di come le funzionalità di GIMP siano in contrasto con quelle di Inkscape.
programmatori

@coderworks: GIMP rasterizzerà la pagina PDF importata in una determinata risoluzione. In altre parole, è leggermente meglio dell'uso di "Stampa schermo". Inkscape, d'altra parte, conserverà i dati vettoriali originali e le immagini raster originali.
Denilson Sá Maia,

5

Senza installare alcun software, è possibile passare a PDF-XChange Viewer (selezionare la versione portatile ) che ha questa capacità già integrata

  • esporta tutte o le pagine selezionate come immagine
  • formato di output: PNG, JPG, TIFF, BMP
  • scegli DPI, livello di compressione, scala di grigi
  • può salvare più pagine come TIFF multipagina

    inserisci qui la descrizione dell'immagine

    inserisci qui la descrizione dell'immagine
    clicca per ingrandire


Si noti che mentre questo metodo converte intere pagine PDF in immagini, il metodo spiegato da @Laurenz utilizzando Sumatra PDF è superiore se si desidera estrarre immagini da una pagina PDF con contenuto misto (immagine + testo) per ottenere solo l'immagine.


2
@MarkSeemann Non posso seguirlo. "Senza installare alcun software" significa in questo contesto che è disponibile una versione portatile. Il software portatile non può essere "installato" per definizione. Basta scaricare, estrarre e avviarlo.
nixda,

3
Il fatto che sia necessario "Scegliere il DPI" vanifica lo scopo. Stai ridimensionando le immagini raster (array di pixel) e qualsiasi ridimensionamento di un'immagine raster provoca una perdita di qualità e informazioni.
Anthony

convertire i file PPM in png o jpeg?
Kiquenet,

4

Sumatra PDF è un lettore PDF open source veloce e leggero in grado di copiare le immagini direttamente negli Appunti, senza alcuna rasterizzazione.


3

MuPDF è un nuovo visualizzatore di PDF multipiattaforma (desktop e mobile) (creato nel 2006) rilasciato sotto licenza AGPL. È gestito dalle stesse persone di Ghostscript .

Contiene uno strumento da riga di comando per estrarre immagini da un PDF:

mutool extract [options] file.pdf [object numbers]

Il comando extract può essere utilizzato per estrarre immagini e file di caratteri da un PDF. Se nella riga di comando non viene indicato alcun numero di oggetto, verranno estratti tutti i caratteri e le immagini.

-p password
       Use the specified password if the file is encrypted.

-r     Convert images to RGB when extracting them.

2

usare pdftocairoda poppler toolkit. Può estrarre e convertire immagini di pdf in qualsiasi formato desiderato. Genera sempre immagini e non genera mai ppm o alcuni dadi del genere. Il seguente comando converte le pagine pdf in immagini jpg di esso:

pdftocairo.exe -jpeg "my.pdf" "my"

Puoi scaricarlo da qui per Windows: http://blog.alivate.com.au/poppler-windows/

È disponibile anche su Linux.


Questo comando NON ESTRATTA le immagini incorporate in un PDF (come richiesto dall'OP). Invece CONVERTE pagine PDF complete in formati di immagine. Questa risposta non corrisponde alla domanda posta.
Kurt Pfeifle,

1

http://www.sumnotes.net/ è uno strumento online per estrarre note, punti salienti e immagini. L'ho usato ampiamente all'università per la mia tesi e sono rimasto davvero soddisfatto.


Commerciale con prova gratuita limitata. È anche online, il che significa che la privacy non può essere garantita!
Anthony

-1

normalmente estraggo l'immagine incorporata con 'pdfimages' alla risoluzione nativa, quindi uso la conversione di ImageMagick nel formato necessario:

$ pdfimages -list fileName.pdf
$ pdfimages fileName.pdf fileName   # save in .ppm format
$ convert fileName-000.ppm fileName-000.png

questo genera il file dei risultati migliore e più piccolo.

Nota: per immagini JPG con perdita di dati, è necessario utilizzare -j:

$ pdfimages -j fileName.pdf fileName   # save in .jpg format

Sulla piattaforma Win fornita poco è stato necessario scaricare un recente binario 'poppler-util' (0.37, 2015) da: http://blog.alivate.com.au/poppler-windows/

AGGIORNAMENTO: Nel recente "poppler-util" 0,50+ (2016), pdfunite ha un'opzione "-all" per estrarre bitmap compresso senza perdita di dati come .png e bitmap compresso con perdita di dati come .jpg, quindi un semplice:

$ pdfimages -all fileName.pdf fileName

estrarre sempre il miglior contenuto di qualità possibile dal PDF


In precedenza era nella risposta di Kurt Pfeifle.
daniel.neumann,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.