Eu uso o pdftk para compactar um pdf usando a seguinte linha de comando
pdftk file1.pdf output file2.pdf compress
Funciona quando o peso do meu arquivo diminui.
Existem [opções] para alterar a compressão ???
Ou talvez outras soluções para compactar meu arquivo? É pesado porque alguns gráficos têm muitos pontos . Existe uma maneira de converter esses gráficos para jpg, por exemplo, e adaptar a compressão?
compression
pdftk
RockScience
fonte
fonte
Respostas:
Eu tive o mesmo problema e encontrei duas soluções diferentes (veja este tópico para mais detalhes). Ambos reduziram drasticamente o tamanho do meu PDF não compactado.
Pixelizado (com perdas):
Sem pixels (sem perdas, mas pode ser exibido de maneira um pouco diferente):
Edit : Acabei de descobrir outra opção (para compressão sem perdas), que evita o comando gs desagradável. qpdf é uma ferramenta bacana que converte PDFs (compressão / descompressão, criptografia / descriptografia) e é muito mais rápida que o comando gs:
fonte
gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.5 -dPDFSETTINGS=/printer -dNOPAUSE -dQUIET -dBATCH -sOutputFile=output.pdf input.pdf
gs
comando na resposta não é exatamente sem perdas, pois reduz a resolução e a qualidade dos JPGs incorporados. Mas é um incêndio sem perdas. texto, mantendo-o como texto, enquanto oconvert
comando o converte em gráficos raster.-dPDFSETTINGS=
como/ebook
oferece uma saída muito boa para mim: claro, está compactado e alguns artefatos jpg são visíveis, mas é totalmente legível para um tamanho razoável. Obrigado!este procedimento funciona muito bem
De uma chance.
fonte
Tentando compactar um PDF fiz com tiffs de 400ppi, a maioria de 8 bits, alguns de 24 bits, com compactação PackBits, usando
tiff2pdf
compactado com Zip / Deflate. Um problema que tive com cada um desses métodos: nenhum dos métodos acima preservou os marcadores TOC que eu cuidadosamente criei manualmente no Acrobat Pro X. Nem mesmo aebook
configuração recomendada parags
. Claro, eu poderia simplesmente abrir uma cópia do original com o TOC intacto e fazer um,Replace pages
mas, infelizmente, nenhum desses métodos fez um trabalho satisfatório para começar. Ou eles reduziram tanto o tamanho que a qualidade ficou inaceitavelmente pixelada, ou eles não reduziram o tamanho e em um caso realmente aumentaram apesar da perda de qualidade.pdftk compress
:gs screen
:gs printer
:gs ebook
:qpdf --linearize
:pdf2ps
:ps2pdf
:fonte
Se o tamanho do arquivo ainda for muito grande, pode ser útil usar o ps2pdf para diminuir a resolução do arquivo PDF produzido:
Ajuste o valor da opção -dColorImageResolution para obter um resultado que atenda às suas necessidades (o valor descreve a resolução da imagem em DPIs). Se o arquivo de entrada estiver em tons de cinza, substituir Cor por Cinza ou usar as duas opções no comando acima também pode ajudar. É possível um ajuste fino adicional alterando a opção -dPDFSETTINGS para / default ou / printer . Para obter explicações sobre todas as opções possíveis, consulte o manual do ps2pdf .
fonte
Depois de tentar gpdf como nullglob sugeriu, descobri que obtive os mesmos resultados de compactação (um arquivo de ~ 900 MB até ~ 30 MB) apenas usando a impressora cups-pdf. Isso pode ser mais fácil / preferido se você já estiver visualizando um documento e só precisar compactar um ou dois documentos.
No Ubuntu 12.04, você pode instalar por
Após a instalação, certifique-se de verificar em Ferramentas do sistema > Administração > Impressão > clique com o botão direito em 'PDF' e defina-o para 'ativar'
Por padrão, a saída é salva em uma pasta chamada PDF em seu diretório inicial.
fonte
A opção pdf2ps de uma linha (por Lee) realmente aumentou o tamanho do pdf. No entanto, as duas etapas foram melhores. E pode ser combinado em um único usando o redirecionamento de & para entrada / saída padrão e canais:
pdf2ps large.pdf - | ps2pdf - small.pdf
reduziu um PDF gerado pelo xsane de 18 Mo para 630 ko!
Os links se perdem, mas para o exemplo atual, não é uma preocupação ... e foi a maneira mais fácil de se chegar ao resultado desejado.
fonte
ps2pdf
, veja meu comentário à resposta de @Lee.pdf2ps large.pdf small.pdf
é o suficiente, em vez de duas etapasNo entanto,
ps2pdf large.pdf small.pdf
é uma escolha melhor.ps2pdf
é muito mais rápidopdf2ps
às vezes produz um arquivo maior.fonte
out.pdf
, ele se tornou um arquivo PS (mimetype out.pdf
dizout.pdf: application/postscript
).mimetype small.pdf
?mimetype small.pdf
ésmall.pdf: application/pdf
. Acho que o programa pode determinar o tipo de arquivo automaticamente de acordo com o sufixo.ps2pdf
é melhor.Não vi muita redução no tamanho do arquivo usando qpdf. A melhor maneira que encontrei é depois que o pdftk estiver pronto, use o ghostscript para converter o pdf em postscript e depois de volta ao pdf. Em PHP, você usaria exec:
Usei isso há alguns minutos para obter a saída do pdftk de 490k para 71k.
fonte
Eu tive o mesmo problema e usei essa função para compactar páginas individuais, o que resulta na compactação do tamanho do arquivo em até 1/3 do tamanho original.
fonte
Caso você queira compactar um PDF que contenha muito texto selecionável, no Windows você pode usar o Compressor NicePDF - escolha a opção "Flate". Depois de tentar tudo (cpdf, pdftk, gs), ele finalmente me ajudou a compactar meu PDF de 1360 páginas de 500 MB para 10 MB.
fonte