GhostScript - Reduzindo o tamanho de arquivos PDF pelo terminal

Publicado por Fábio Berbert de Paula em 04/12/2012

[ Hits: 24.434 ]

Blog: https://fabio.automatizando.dev

 


GhostScript - Reduzindo o tamanho de arquivos PDF pelo terminal



Hoje precisei enviar um arquivo PDF como anexo em formulário. Meu problema era o seguinte: o PDF escaneado tinha 7mb e o limite de upload do site era 2mb. Eu precisava reduzir o tamanho do arquivo.

Uma rápida pesquisada no Google e encontrei a solução. Fico imaginando se em outros sistemas operacionais a coisa é tão simples assim. :)

Para reduzir o tamanho de um arquivo PDF, execute:

gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.3 -dNOPAUSE -dBATCH -sOutputFile=novo.pdf velho.pdf

Onde novo.pdf é o novo arquivo que será criado e velho.pdf é o antigo, o grande.

Entendendo o comando:
  • gs :: Ou GhostScript, um interpretador e visualizador de arquivos PS e PDF.
  • -sDEVICE :: Determina o dispositivo de saída do comando. Como estamos gerando um arquivo PDF, usaremos o dispositivo built-in pdfwrite;
  • -dCompatibilityLevel :: Determina o nível de compatibilidade do PDF. Neste caso o level 1.3 é compatível com o Acrobat Reader 3 ou superior. Level 1.4 por exemplo já seria compatível apenas com Acrobat Reader 5 ou superior.
  • -dNOPAUSE :: Desabilita o prompt (pausa) ao final de cada página processada.
  • -dBATCH :: Processamento em batch. Caso omita esta opção, após o processamento você cairá no interpretador gs e precisará digitar "quit" para sair.

Meu arquivo foi reduzido de 7mb para 1.1mb!

Fui.

Outras dicas deste autor

Configurando o Exim como MX secundário

Como ouvir rádios online via terminal

Como cortar arquivos de áudio usando o ffmpeg

Enviando mensagem para todos os usuários

Pinguins, Sonic, Bart e Lemmings no seu desktop

Leitura recomendada

imsniff - Convertendo os logs em TXT para HTML

GoogleCL: O poder do Google na linha de comando

Pesquisa de arquivos e executáveis em pacotes .deb

Gnome/KDE: Sistema não loga ou efetua logoff em 10 segundos (ERRO no .ICEauthority)

Removendo a mensagem de erro vboxclient na inicialização LinuxMint-17x e LMDE-2

  

Comentários
[1] Comentário enviado por jaac em 10/04/2014 - 12:56h

Valeu pela dica!
precisava enviar um curriculo, com um design diferenciado por causa da vaga, e o arquivo tinha 25 Mb!

Após este processo, o arquivo ficou com 700Kb!

Muito obrigado!

[2] Comentário enviado por lilomg em 26/07/2015 - 13:53h

No caso deste comando, como faria para converter todos os arquivos pdf dentro de um diretório para outro diretório?



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts