Compressão de PDF em teste: método, tamanho do ficheiro e funcionalidades

Aqui encontras a nossa própria medição de 13 de outubro de 2026: três PDFs de teste criados por nós, nove execuções de compressão com contagens exatas de bytes e verificações de funcionalidades separadas. Estes dados não permitem estabelecer uma classificação face a outras ferramentas nem prever o resultado para o teu próprio PDF.

O que foi testado e o que ficou de fora?

Foi testado exatamente o mesmo código de compressão, sem alterações, que o Compressor de PDF deste site utiliza. No entanto, para a medição, o código não foi executado no navegador, mas chamado diretamente em Node.js. Assim, é possível registar com precisão a entrada, as definições e o resultado guardado de cada execução.

  • Módulo de compressão: QPDF 12.2.0 em WebAssembly, versão do wrapper 0.3.0. O script de compilação do wrapper fixa o QPDF 12.2.0, e o módulo instalado também indica 12.2.0 quando a versão é consultada.
  • Ambiente: Node.js 24.18.1 em Windows 11, compilação 26200, x64.
  • Âmbito: três ficheiros de entrada sintéticos, nove execuções de compressão e um ficheiro de teste com um marcador de posição de assinatura que deve ser rejeitado.
  • Verificação posterior: doze PDFs guardados, com um total de 24 páginas, cada um sujeito a uma verificação da estrutura e à visualização das páginas renderizadas.

Não fazem parte desta medição:

  • o tempo de processamento; não foi medido qualquer tempo,
  • o comportamento em navegadores específicos ou em smartphones e tablets reais,
  • fotografias reais, digitalizações, ficheiros grandes ou documentos de utilizadores,
  • outros programas de compressão ou serviços online,
  • uma redução média que possas esperar para o teu ficheiro.

Ficheiros de teste, definições e transferências

O teste utiliza exclusivamente PDFs criados por nós. Não inclui documentos de clientes, fotografias do mundo real nem assinaturas de pessoas reais. A imagem no ficheiro de imagem também foi gerada: apresenta uma textura com um gradiente de cor e não é uma fotografia nem uma digitalização.

  • Ficheiro de texto, 3.029 bytes: duas páginas com texto, um campo de formulário preenchido, uma ligação, uma rotação de página e uma marcação na árvore de estrutura.
  • Ficheiro de imagem, 1.359.079 bytes: os mesmos componentes, mais uma imagem gerada com 640 × 800 píxeis. O ficheiro de texto sem imagem tem apenas 3.029 bytes, pelo que a maior parte do tamanho deste ficheiro se deve à imagem.
  • Ficheiro de texto já otimizado, 2.721 bytes: serve de exemplo de um caso em que já não é possível obter qualquer redução adicional.
  • Ficheiro com marcador de posição de assinatura, 3.139 bytes: contém apenas a estrutura de uma assinatura, mas nenhuma assinatura digital real. É utilizado para verificar se o compressor rejeita ficheiros assinados.

O mesmo ponto de partida para cada execução

  • Cada execução começa com os bytes originais, sem alterações. Se uma execução precisar de várias tentativas, cada tentativa seguinte também recomeça a partir do original e não do resultado anterior.
  • Todos os resultados contêm ambas as páginas completas. Não foram removidas páginas, nada foi empacotado em ZIP, nenhuma imagem foi reduzida para menos píxeis e nenhuma página inteira foi convertida em imagem. Só assim é possível comparar as contagens de bytes dos diferentes modos.
  • Cada resultado foi guardado com um nome de ficheiro próprio. Foram registadas a contagem de bytes e a soma de verificação SHA-256 da entrada e da saída. A soma de verificação é uma impressão digital do ficheiro: basta alterar um único byte para que a soma de verificação mude.
  • Para cada execução, foram registados o modo, o tamanho pretendido, quando aplicável, e a qualidade JPEG efetivamente utilizada.

O que fazem tecnicamente os três modos

No registo e nas tabelas, os modos chamam-se lossless, balanced e small. Na ferramenta, encontras estes modos com as seguintes designações: lossless corresponde a Otimização sem perdas, balanced a Equilibrado e small a Ficheiro mais pequeno. Otimização sem perdas otimiza apenas a estrutura do ficheiro, ou seja, os objetos e os fluxos de dados comprimidos. Equilibrado também recodifica as imagens adequadas como JPEG com o nível de qualidade 80. Se o tamanho pretendido não for atingido, segue-se uma tentativa com 70. Ficheiro mais pequeno começa no nível 65 e, se o objetivo não for atingido, passa para 50 e depois para 40. Se tiveres indicado um tamanho pretendido e o original ou a versão com a estrutura otimizada já cumprir esse objetivo, não é necessária qualquer tentativa de JPEG com perdas. No final, é escolhida a menor versão verificada. Se nenhuma for mais pequena do que o original, mantém-se o original. Isto não garante uma redução específica.

Segundo a documentação do QPDF 12.2, o QPDF não reduz a resolução das imagens neste processo. No entanto, a recodificação em JPEG pode produzir artefactos visíveis, e o QPDF só utiliza os dados de imagem recodificados se forem mais pequenos. O guia Comprimir PDF sem perda de qualidade explica o que isto significa para a qualidade da imagem.

Ficheiros e somas de verificação para conferência

A tabela seguinte contém ligações para todos os ficheiros de teste e de resultado. Depois de descarregares um ficheiro, compara a soma de verificação SHA-256 com uma ferramenta de verificação à tua escolha. Se coincidir, tens exatamente o ficheiro que foi medido. O registo em inglês reproducibility-manifest.json contém as chamadas e as definições exatas de todas as execuções.

Ficheiros de entrada e de resultado da medição de 13 de outubro de 2026, com contagem de bytes e soma de verificação SHA-256
FicheiroConteúdobyteSHA-256
text-input.pdfEntrada: ficheiro de texto3.02935d8fa138b0343d3dd61e58fe7ba75c6c55581d8973294698c9a4e78f97eaa60
image-input.pdfEntrada: ficheiro de imagem com imagem gerada1.359.079bdb027a008a387cf82b8218c57ced81f00889042f7fad85a577ebbe1f779730a
alreadyOptimized-input.pdfEntrada: ficheiro de texto já otimizado2.72151eac67f8c16f35a206c258f0b79ae6eb435170b73ecf893ecd9dea50d7dbeda
signed-placeholder-input.pdfEntrada: marcador de posição de assinatura, sem assinatura real3.139a62f7a96b03f287ec8686c6908c98edf78f3116ea16060c49c767bc95c7dc3b0
text-lossless-output.pdfResultado: ficheiro de texto, lossless2.721b775013b0dc458b3e8cf867a93bb94352452b04302eb1ecebab3ac5c0daafdfe
image-lossless-output.pdfResultado: ficheiro de imagem, lossless1.358.764f17192271ad99aeae5910991ec79e8ca21b1d0a124e6e40de9ed102892529146
image-balanced-output.pdfResultado: ficheiro de imagem, balanced179.708491bb1a46b2e6b098bb431882daf1526bd2f5e1041bf2a7d2b2a749315a01c57
image-balanced-repeat-output.pdfResultado: ficheiro de imagem, balanced, repetição179.708ad1612e002465204b99a47815f54efe81c9fdf63580ac8ad53b991f193ce4c6f
image-small-output.pdfResultado: ficheiro de imagem, small125.710d5f9d6eae5829ef534e1033db8423dac42ea61373e924924f66b55a763473b17
image-small-met-250000-output.pdfResultado: ficheiro de imagem, small, objetivo de 250.000 bytes125.710d5f9d6eae5829ef534e1033db8423dac42ea61373e924924f66b55a763473b17
image-small-unmet-128-output.pdfResultado: ficheiro de imagem, small, objetivo de 128 bytes74.7071ff4d7db12907e5c716efffb282e27d805199ddd4766dc10aa64a08fa6593a7e
image-small-already-met-output.pdfResultado: ficheiro de imagem, small, objetivo de 1.359.079 bytes1.358.7646b5a9384b3871c6a7c6623e208975de6ac6226ea64b9f67ab07872b0283c4545
already-optimized-lossless-output.pdfResultado: ficheiro de texto já otimizado, lossless (original mantido)2.72151eac67f8c16f35a206c258f0b79ae6eb435170b73ecf893ecd9dea50d7dbeda
reproducibility-manifest.jsonRegisto com chamadas, definições e valores medidos (Inglês)29.0100778b8a0482d73dbe686dac1cadc0ac990f78ced3a49a7f7183702ebfcb17aa4

Resultados: tamanho do ficheiro apresentado com transparência

Medições de 13 de outubro de 2026 no diagrama

O diagrama mostra as nove execuções da nossa medição com QPDF 12.2.0 (WASM) em Node.js no Windows 11. Filtra por ficheiro de teste ou método e alterna entre números exatos de bytes e tamanho restante em percentagem.

9 de 9 execuções apresentadas

  1. Texto · Sem perdas

    Tamanho reduzido

    Original
    3.029 byte
    Resultado
    2.721 byte
    Limite definido
    Nenhum limite definido
  2. Imagem · Sem perdas

    Tamanho reduzido

    Original
    1.359.079 byte
    Resultado
    1.358.764 byte
    Limite definido
    Nenhum limite definido
  3. Imagem · Equilibrado

    Tamanho reduzido

    Original
    1.359.079 byte
    Resultado
    179.708 byte
    Limite definido
    Nenhum limite definido
  4. Imagem · Equilibrado, repetição

    Mesmo tamanho, soma de verificação diferente

    Original
    1.359.079 byte
    Resultado
    179.708 byte
    Limite definido
    Nenhum limite definido
  5. Imagem · Forte

    Tamanho reduzido

    Original
    1.359.079 byte
    Resultado
    125.710 byte
    Limite definido
    Nenhum limite definido
  6. Imagem · Forte

    Objetivo atingido

    Original
    1.359.079 byte
    Resultado
    125.710 byte
    Limite definido
    250.000 byte
  7. Imagem · Forte

    Objetivo não atingido, PDF completo disponibilizado

    Original
    1.359.079 byte
    Resultado
    74.707 byte
    Limite definido
    128 byte
  8. Imagem · Forte

    Objetivo já cumprido anteriormente

    Original
    1.359.079 byte
    Resultado
    1.358.764 byte
    Limite definido
    1.359.079 byte
  9. Texto já otimizado · Sem perdas

    Manter o original inalterado

    Original
    2.721 byte
    Resultado
    2.721 byte
    Limite definido
    Nenhum limite definido

    Inalterado – original mantido

Medição histórica: não permite tirar conclusões sobre navegadores, telemóveis, a versão atual ou outras ferramentas. As percentagens mostram o tamanho restante, não a redução. Um limite introduzido é um valor numérico definido, não uma garantia. A tabela abaixo contém as nove execuções, independentemente dos filtros.

Este teste não permite prever quanto irá diminuir o teu próprio PDF. Isso depende do conteúdo do teu ficheiro. Os três ficheiros de teste já mostram a variação possível: o pequeno ficheiro de texto ficou 10,17 por cento mais pequeno no modo lossless, enquanto o ficheiro de imagem diminuiu apenas 0,02 por cento no mesmo modo. Só a recodificação em JPEG permitiu uma redução de 86,78 por cento no ficheiro de imagem. A tabela inclui todas as nove execuções, incluindo as que não produziram uma redução significativa.

Medição de 13 de outubro de 2026: nove execuções com QPDF 12.2.0 (WebAssembly) em Node.js no Windows 11, com ficheiros de teste sintéticos de duas páginas cada
Ficheiro de testeModoTamanho pretendidoOriginal (bytes)Resultado (bytes)ReduçãoQualidade JPEGEstado
Textolosslessnenhum3.0292.721308 bytes (10,17 %)não utilizadareduzido
Imagemlosslessnenhum1.359.0791.358.764315 bytes (0,02 %)não utilizadareduzido
Imagembalancednenhum1.359.079179.7081.179.371 bytes (86,78 %)80reduzido
Imagembalanced, repetiçãonenhum1.359.079179.7081.179.371 bytes (86,78 %)80mesmo tamanho, soma de verificação diferente
Imagemsmallnenhum1.359.079125.7101.233.369 bytes (90,75 %)65reduzido
Imagemsmall250.000 bytes1.359.079125.7101.233.369 bytes (90,75 %)65objetivo atingido
Imagemsmall128 bytes1.359.07974.7071.284.372 bytes (94,50 %)40objetivo não atingido, PDF completo fornecido
Imagemsmall1.359.079 bytes1.359.0791.358.764315 bytes (0,02 %)não utilizada, sem recodificação em JPEGobjetivo já cumprido anteriormente
Texto já otimizadolosslessnenhum2.7212.7210 bytes (0 %)não utilizadaoriginal mantido sem alterações

A redução é sempre calculada a partir dos bytes reais: bytes poupados a dividir pelo tamanho original. Na execução com balanced, são 1.179.371 de 1.359.079 bytes, ou seja, 86,78 por cento. Podes fazer este cálculo para o teu próprio ficheiro com a Calculadora da taxa de compressão.

A qualidade JPEG não é uma percentagem de redução

Os valores 80, 65 ou 40 são definições do codificador JPEG e não percentagens de redução do tamanho. Neste caso, o nível de qualidade 80 permitiu reduzir 86,78 por cento, enquanto o nível 65 permitiu reduzir 90,75 por cento. Noutro ficheiro, os mesmos níveis podem produzir resultados muito diferentes.

Porque se inclui o caso sem redução

Um teste que só mostra a maior redução omite um caso importante: o que acontece quando já não é possível reduzir mais? No ficheiro de texto já otimizado com 2.721 bytes, o modo lossless não produziu uma versão mais pequena. Por isso, o compressor manteve o original: saída de 2.721 bytes, redução de 0 bytes e a mesma soma de verificação SHA-256 na entrada e na saída. Isto demonstra, com o módulo de compressão real, que neste caso não recebes um ficheiro reescrito sem qualquer benefício. O guia O PDF não fica mais pequeno explica o que podes fazer nessa situação.

Tamanho pretendido atingido, não atingido ou já cumprido

  • Objetivo de 250.000 bytes: logo a primeira tentativa com o nível 65 produziu 125.710 bytes. O objetivo foi assim atingido, e o resultado é até idêntico byte a byte ao da execução sem objetivo.
  • Objetivo de 128 bytes: é um tamanho irrealisticamente pequeno para duas páginas com uma imagem. Mesmo o último nível, 40, só conseguiu chegar aos 74.707 bytes. O compressor indica que o objetivo não foi atingido e, ainda assim, fornece um ficheiro. Neste ficheiro de teste, o resultado guardado com 74.707 bytes contém ambas as páginas e passou nas verificações de funcionalidades descritas mais abaixo. Os dados da imagem foram recodificados com perdas. Esta execução não demonstra que todos os conteúdos sejam preservados em qualquer outro ficheiro.
  • Objetivo de 1.359.079 bytes, ou seja, exatamente o tamanho original: o objetivo foi considerado já cumprido. Foi executada apenas a otimização estrutural sem perdas. O resultado foi de 1.358.764 bytes, o mesmo tamanho da execução com lossless. A imagem não foi recodificada como JPEG, pois as chamadas registadas não contêm nenhuma definição de JPEG.

Mesmo tamanho, soma de verificação diferente

A repetição da execução com balanced voltou a produzir exatamente 179.708 bytes, mas com uma soma de verificação SHA-256 diferente. A execução com o objetivo já cumprido também tem o mesmo tamanho da execução com lossless e, ainda assim, uma soma de verificação própria. Uma razão possível é que, ao gravar um PDF, pode ser criado, por exemplo, um novo identificador de documento. Em contrapartida, as execuções com small sem objetivo e com o objetivo de 250.000 bytes coincidiram byte a byte. A soma de verificação identifica, portanto, um ficheiro guardado específico. Se repetires uma execução, mesmo no navegador, não obterás necessariamente um ficheiro idêntico byte a byte, ainda que o tamanho se mantenha.

Apresentação e funcionalidades verificadas separadamente

Um ficheiro mais pequeno, por si só, não diz se o texto, o formulário e a ligação foram preservados. Uma boa pré-visualização também não o prova. Por isso, os ficheiros guardados foram verificados com duas bibliotecas independentes: pdf-lib lê a estrutura interna guardada, e PDF.js 6.4.299 renderiza as páginas e extrai texto e anotações. Para esse efeito, PDF.js foi executado numa instância isolada do Chromium, versão 151.0.7922.34. Esta verificação dos ficheiros finais é separada da compressão, que foi medida em Node.js no Windows 11. Não foi medida a compressão no navegador nem em dispositivos móveis, e esta verificação nada diz sobre o comportamento de outros programas de PDF. Cada verificação tem o seu próprio método e só é válida para estes ficheiros de teste.

Verificações de funcionalidades nos ficheiros de teste guardados de 13 de outubro de 2026 e respetivas limitações
VerificaçãoMétodoResultadoO que não demonstra
Número de páginas, tamanho das páginas, rotaçãopdf-lib nos nove ficheiros de resultadoaprovado: duas páginas, tamanho e rotação conforme esperadonada sobre os conteúdos ou as imagens
Conteúdo das páginas composto por texto e vetorespdf-lib compara as instruções de conteúdo descodificadas de ambas as páginasexatamente iguais nas nove execuçõesnada sobre os dados da imagem; estes foram recodificados nas execuções com recodificação em JPEG (balanced e small), mas não na execução com small em que o objetivo já estava cumprido
Campo de formuláriopdf-lib lê o valor guardado do campo reference, PDF.js lê o valor a partir das anotaçõeso mesmo valor preenchido DE-2026-4711 em todos os ficheiros verificadosnão verifica a edição, os scripts nem o comportamento em todos os programas de PDF
Ligaçãopdf-lib e PDF.js leem o endereço de destino da ligaçãoligação presente, com o mesmo endereço de teste https://example.test/unchangednão inclui testes de clique em todos os programas de PDF
Pesquisa de textoPDF.js extrai a passagem de texto conhecida «Selectable text, page 1, row 0: test document.» da página 1 dos doze PDFs guardadosencontrada em todosnão inclui reconhecimento de texto (OCR) nem páginas digitalizadas
Árvore de estruturapdf-lib verifica se a árvore de estrutura está presentepresentenão verifica a validade das etiquetas nem a acessibilidade segundo PDF/UA
ApresentaçãoPDF.js renderiza as 24 páginas dos doze PDFs como PNG, e cada página é inspecionada individualmenteaprovado no âmbito dos ficheiros de teste sintéticosnão atribui uma classificação de qualidade, não inclui fotografias nem texto pequeno em digitalizações
Ficheiro assinadoExecução de compressão com o ficheiro que contém o marcador de posiçãorejeitado com SIGNED_PDF, sem ficheiro de saídanão inclui verificação criptográfica de assinaturas reais

Um pormenor sobre o campo de formulário: o seu valor não aparece de forma fiável na extração normal de texto do PDF.js, pelo que foi lido através das anotações. Por isso, se procurares um valor preenchido num formulário de um PDF comprimido e não o encontrares, isso não significa automaticamente que esteja em falta.

Com balanced e small, a imagem foi recodificada como JPEG com perdas, exceto na execução com small em que o objetivo já estava cumprido. As instruções de conteúdo descodificadas para texto e linhas mantiveram-se iguais, mas os dados da imagem da textura não. Nas páginas renderizadas dos resultados do ficheiro de imagem, a posição e as dimensões da imagem, bem como a rotação das páginas, mantiveram-se como no original. Um ponto importante ao veres os ficheiros: já no original, a imagem gerada sobrepõe-se a várias linhas de texto. Esta sobreposição faz parte do ficheiro de teste e não é um dano causado pela compressão. Mantém-se nos resultados. Isto não permite concluir que todas as linhas sejam legíveis nem atribuir uma classificação de qualidade. Além disso, uma imagem gerada com textura e gradiente de cor diz pouco sobre a forma como fotografias, digitalizações ou texto pequeno em digitalizações reagem ao mesmo nível. O guia Reduzir o tamanho de um PDF digitalizado aborda este tema.

O marcador de posição de assinatura mostra apenas que o compressor reconhece um ficheiro com estrutura de assinatura e não o processa. Segundo o código de compressão, os ficheiros encriptados e certificados também são rejeitados. Este teste não verifica se uma assinatura real é válida nem contorna qualquer proteção. Mais informações no guia Comprimir PDF com assinaturas e formulários.

Limitações e como fazer a tua própria verificação

A ferramenta é melhor do que PDF24 ou Adobe?

Esta página não responde a essa pergunta. Não executámos outros programas ou serviços online com os mesmos ficheiros. Por isso, um juízo comparativo sobre qualidade, velocidade ou preço não teria fundamento. As listas de melhores ferramentas com percentagens ou controlos deslizantes também não substituem essa comparação. Uma comparação justa exige o mesmo ficheiro de entrada completo, as mesmas páginas, definições registadas, contagens exatas de bytes e as mesmas verificações de funcionalidades para todos os resultados.

Como verificar o teu próprio PDF

  1. Guarda uma cópia do original sem alterações.
  2. Abre o Compressor de PDF e seleciona o ficheiro. Se os detalhes das imagens forem importantes, começa pelo modo sem perdas.
  3. Anota o tamanho exato em bytes do original e do resultado, por exemplo, a partir das propriedades dos ficheiros, e calcula a redução com a Calculadora da taxa de compressão.
  4. Inicia cada nova tentativa com o original e não com um resultado já comprimido. Guarda cada resultado com um novo nome de ficheiro para não substituíres nada.
  5. Abre o ficheiro guardado no programa que o destinatário também utiliza. Verifica todas as páginas, procura uma palavra conhecida, confere os valores dos campos de formulário e as ligações e observa as imagens e o texto pequeno no tamanho original.
  6. Se o teu PDF estiver assinado digitalmente, encriptado ou certificado, não o comprimas com esta ferramenta; esclarece o procedimento com o emissor.

Preferências de privacidade

Escolha se permite a análise de utilização e a publicidade opcionais. Nesta pré-visualização não publicada, ambas permanecem desativadas mesmo que as permita. As ferramentas de documentos funcionam em qualquer caso. Pode alterar a sua escolha a qualquer momento no rodapé.

Definições necessárias

Necessário

As suas preferências e o tema de cores são guardados localmente. As ferramentas de documentos estão disponíveis sem os serviços opcionais.

Inativo

Medição opcional da utilização. Atualmente inativa: ao permitir, a sua preferência é guardada, mas nenhum serviço de análise é ativado nesta pré-visualização.

Inativo

Publicidade opcional. Atualmente inativa: ao permitir, a sua preferência é guardada, mas nenhum serviço de publicidade é ativado nesta pré-visualização.

A análise de utilização e a publicidade opcionais estão desativadas.