Converter PDF em imagens da linha de comando do Linux

Conteúdo

Converter um arquivo PDF em uma imagem pode ser feito facilmente na linha de comando do Linux usando um único comando. Descubra como instalar o utilitário, como usá-lo e como automatizar sua configuração.

O que é poppler-utils ?

Conforme mencionado na introdução desta postagem, precisamos instalar um pequeno conjunto de utilitários chamados poppler-utils para nos ajudar a converter arquivos PDF em imagens.

O conjunto de utilitários poppler-utils nos permite converter imagens em PDF e PDF em imagens.

Instalando poppler-utils

instalar poppler-utils

Instalar poppler-utils em sua distribuição Linux baseada em Debian / Apt (como Ubuntu e Mint), faço:

sudo apt install poppler-utils

Instalar poppler-utils em sua distribuição Linux baseada em RedHat / Yum (como RedHat e Fedora), faça o seguinte:

sudo yum install poppler-utils

Conversão de PDF em imagens

O comando necessário é simples e simples:

pdftoppm -png teste.pdf teste

Com ele pdftoppm comando podemos converter PDF em imagens. Nós especificamos que queremos um arquivo PNG para o formato de saída (usando -png) e que nosso arquivo de entrada é test.pdf.

O arquivo de saída que especificamos como test. pdftoppm adicionará automaticamente um sufixo número de página (O que -1) e uma extensão (com base no anterior -png opção aprovada).

Por tanto, o nome do arquivo de saída será test-1.png, como podemos verificar abaixo:

ls test-1.png
eog test-1.png 

pdftoppm converter arquivo pdf em imagem na linha de comando do Linux

Qualquer página subsequente seria test-2.png etc. o eog comando (e eog está instalado) irá abrir o arquivo para que você possa revisar o resultado, mesmo que você possa usar qualquer outro programa de gerenciamento de imagens que desejar.

Processamento em lote de arquivos PDF para imagens

Podemos criar um comando de linha única para processar em lote todos os arquivos PDF com um determinado nome para as imagens. Então, podemos apenas adicionar esta linha a um pequeno script .sh e automatizar ainda mais, ou podemos apenas usá-lo na linha de comando sempre que precisarmos converter um grande número de arquivos PDF em imagens.

ls --color = nunca testa * .pdf | mas é|.pdf||' | xargs -I{} pdftoppm {}.pdf -png {}

Neste comando, primeiro obtemos uma lista de diretórios para todos os arquivos PDF que têm um nome que começa com prova e termina com .pdf, usando o ls --color=never test*.pdf.

a --color=never é essencial, uma vez que os símbolos de codificação de cores na caixa (se eles são ativos, já que eles são por padrão) às vezes eles podem confundir xargs.

Em seguida, usamos um simples sed substitui o comando para substituir um ponto literal seguido de pdf por nada. Em outras palavras, nós eliminamos o .pdf extensão de arquivo.

Isso nos dá a vantagem de adicioná-lo novamente mais tarde apenas quando necessário, Em outras palavras, ao especificar o arquivo de entrada para pdftoppm, mas não ao especificar o arquivo de saída para o mesmo pdftoppm comando, muito parecido com nosso exemplo anterior acima.

Para terminar, nós usamos xargs para enviar cada nome de arquivo pdf (menos o .pdf) para pdftoppm um a um. Nós usamos o -I opção a xargs o que nos permite especificar qualquer entrada recebida (Em outras palavras, nomes abreviados de arquivos PDF) simplesmente usando {} no comando que segue.

Como você pode ver, nosso pdftoppm O comando agora se parece muito com o primeiro exemplo, com cada nome de arquivo PDF individual como entrada (com o novo sufixo .pdf), e como saída o nome do arquivo pdf sem .pdf.

Vamos correr:

Automação Pdftoppm convertendo vários arquivos PDF em imagens

Isso funcionou bem: os três arquivos PDF, todos com uma página cada, eles se tornaram três .png registros (uma imagem por página e, neste caso, por PDF, já que cada PDF tinha apenas uma página), todos com o nome e sufixo corretos.

Como uma alternativa para -png opção, também pode ser usado -jpeg para gerar arquivos JPEG em vez. Usar pdftoppm --help o man pdftoppm para ver uma lista completa de alternativas.

Final

Neste post vimos como pode ser fácil e simples converter arquivos PDF em arquivos de imagem, E isso diretamente da linha de comando do Linux!! Também estamos procurando uma maneira simples de automatizar este procedimento. Desfrutar!

Assine a nossa newsletter

Nós não enviaremos SPAM para você. Nós odiamos isso tanto quanto você.