Como remover imagens de um arquivo PDF

Como remover imagens de um arquivo PDF

Eu tenho um documento PDF bastante grande (~100 MB) com muitas imagens (como ilustrações e imagens de fundo) e gostaria de ter uma cópia desse PDF sem imagens, mas não consigo descobrir como fazer faça isso.

Não estou falando em convertê-lo apenas para texto, gostaria de manter os parágrafos/tabelas/multicolunas como estão.

Sinto-me confortável com linha de comando e tenho vários computadores com distribuições diferentes que posso usar.

Responder1

As versões mais recentes do Ghostscript também podem fazer isso. Basta adicionar o parâmetro -dFILTERIMAGEao seu comando.

Existem ainda mais dois novos parâmetros que podem ser adicionados para remover seletivamente os tipos de conteúdo"vetor"e"texto":

  1. -dFILTERIMAGE: produz uma saída onde todas as imagens raster são removidas.

  2. -dFILTERTEXT: produz uma saída onde todos os elementos de texto são removidos.

  3. -dFILTERVECTOR: produz uma saída onde todos os desenhos vetoriais são removidos.

Quaisquer duas dessas opções podem ser combinadas. (Se você combinar todos os 3, todas as páginas ficarão em branco...)

Exemplos

Aqui está a captura de tela de um exemplo de página PDF que contém todos os 3 tipos de conteúdo mencionados acima:

Captura de tela da página original do PDFcontendo elementos "imagem", "vetor" e "texto".
Captura de tela da página PDF original contendo elementos "imagem", "vetor" e "texto".


A execução dos 6 comandos a seguir criará todas as 6 variações possíveis do conteúdo restante:

gs -o noIMG.pdf -sDEVICE=pdfwrite -dFILTERIMAGE input.pdf
 gs -o noTXT.pdf -sDEVICE=pdfwrite -dFILTERTEXT input.pdf
 gs -o noVCT.pdf -sDEVICE=pdfwrite -dFILTERVECTOR input.pdf

 gs -o somenteIMG.pdf -sDEVICE=pdfwrite -dFILTERVECTOR -dFILTERTEXT input.pdf
 gs -o somenteTXT.pdf -sDEVICE=pdfwrite -dFILTERVECTOR -dFILTERIMAGE input.pdf
 gs -o somenteVCT.pdf -sDEVICE=pdfwrite -dFILTERIMAGE -dFILTERTEXT input.pdf

A imagem a seguir ilustra os resultados:


Linha superior,da esquerda: todo o “texto” removido; todas as “imagens” removidas; todos os "vetores" removidos.Linha inferior,da esquerda: apenas “texto” mantido; apenas “imagens” mantidas; apenas "vetores" mantidos.
Linha superior, a partir da esquerda: todo o “texto” removido; todas as “imagens” removidas; todos os "vetores" removidos. Linha inferior, a partir da esquerda: apenas “texto” mantido; apenas “imagens” mantidas; apenas "vetores" mantidos.


Responder2

cpdf -draft original.pdf -o version_without_images.pdf

Não está nos repositórios, mas você pode encontrar um download (pré-compiladooufonte) sobreo site deles.


Manual:

15.1 Rascunhos de Documentos

A opção -draft remove imagens bitmap (fotográficas) de um arquivo, para que possa ser impresso com menos tinta. Opcionalmente, a opção -boxes pode ser adicionada, preenchendo os espaços deixados em branco com uma caixa cruzada indicando onde estava a imagem. Não é garantido que isso seja totalmente visível em todos os casos (o bitmap pode ter sido parcialmente coberto por objetos vetoriais ou cortado no original). Por exemplo:

 cpdf -draft -boxes in.pdf -o out.pdf

Responder3

Embora a resposta do @Rinzwind seja aCoisa certa, gostaria apenas de comentar a solução "intermediária". Normalmente você pode reduzir bastante o tamanho das imagens usandoscript fantasmacom

gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/screen \
   -dNOPAUSE -dQUIET -dBATCH -sOutputFile=small.pdf original.pdf

... às vezes é muito útil para revisão. A página de manual para escrever PDF éaqui.

Responder4

Você pode usarEditor Mestre de PDF(para Windows, Linux, macOS):

  1. Abra o PDF
  2. Exclua essas imagens
  3. Salvar como um novo arquivo PDF

Você pode baixá-lo no centro de software Ubuntu.

informação relacionada