v1.0.0 — Ferramenta de linha de comando Desenvolvido em Go

pdfcomparer

Compare dois arquivos PDF página por página. Detecte diferenças visuais com sensibilidade configurável, alinhamento automático e processamento paralelo. Feito para pipelines de CI/CD.

Disponível para: Linux Windows macOS
$ pdfcomparer -a original.pdf -b revised.pdf -dpi 300 -t 0.02
Renderizando original.pdf ... 12 páginas
Renderizando revised.pdf ... 12 páginas
Comparando páginas ...
Page 3 modificada — diff 2.41%
Page 7 modificada — diff 0.87%
Page 11 modificada — diff 5.12%
────────────────────────────────────
3 / 12 páginas diferentes.
Relatório salvo → diff_report.pdf

Desenvolvido em Go — técnicas modernas, performance máxima

Concorrência nativa

Goroutines e channels orquestram os workers de renderização e comparação sem overhead.

Binário único

Zero dependências em tempo de execução. Um executável autossuficiente para Linux, macOS e Windows.

Baixo consumo de memória

O garbage collector do Go mantém o uso de memória mínimo mesmo ao processar centenas de páginas.

Velocidade compilada

Código de máquina nativo. Sem JVM, sem interpretador — inicia em milissegundos e permanece rápido.

O que o pdfcomparer faz

Preciso, configurável e rápido.

Comparação pixel a pixel

Renderiza cada página em DPI configurável (150–300+) e compara as imagens pixel a pixel usando um limiar de distância de cor que você define.

Alinhamento automático

Detecta e compensa deslocamentos globais de página automaticamente. Offset de busca e limiar de diff configuráveis para acionar o alinhamento.

Processamento paralelo

Os arquivos A e B sempre são renderizados em paralelo. Configure workers de renderização por arquivo (-rw) e workers de comparação (-j) de forma independente.

Relatório visual de diferenças

Gera um relatório em PDF destacando todas as regiões alteradas. Caminho de saída configurável com -o.

Seleção de intervalo de páginas

Compare apenas as páginas que precisa. Suporta intervalos como 1-10 ou listas mistas como 1,3,7-12.

Multi-idioma

Idioma do relatório detectado automaticamente pela variável de ambiente LANG. Suporta inglês, português (pt-br) e espanhol.

Referência de opções

pdfcomparer -a ARQUIVO_A -b ARQUIVO_B [opções]

Obrigatórias
Flag Tipo Descrição
-astringPrimeiro arquivo PDF (original)
-bstringSegundo arquivo PDF (modificado)
Saída
Flag Tipo Descrição
-o string PDF de relatório de saída (padrão: diff_report.pdf)
-lang string Idioma do relatório: en, pt-br, es (padrão: detectado automaticamente via LANG)
Sensibilidade da comparação
Flag Tipo Descrição
-t float Limiar de distância de cor 0.0–1.0 (padrão: 0.05)
0.01 = diferenças muito sutis | 0.10 = apenas diferenças óbvias
-min-diff-pct float Diff% mínimo para considerar uma página diferente (padrão: 0.0)
Use 3.0 com -align=true para suprimir ruído de anti-aliasing
-aa-blur int Raio de desfoque antes da comparação (0 = desativado)
1 = remove anti-aliasing de 1 px | 2 = suprime gradientes até 3 px
Renderização
Flag Tipo Descrição
-dpi int Resolução de renderização (padrão: 150)
150 = rápido, bom para texto | 300 = alta qualidade, detecta diffs em imagens
-pages string Intervalo de páginas, ex.: "1-10" ou "1,3,7-12" (padrão: todas)
-rw int Workers de renderização por arquivo; A e B sempre renderizam em paralelo (padrão: 2)
ex.: -rw 4 inicia 4 processos pdftoppm por arquivo (8 no total)
-j int Workers de comparação (padrão: 4)
Alinhamento automático
Flag Tipo Descrição
-align bool Auto-alinhar: detecta e compensa deslocamento global quando o diff da página é alto (padrão: true)
-align-thr float Diff% aproximado acima do qual o alinhamento é tentado (padrão: 3.0)
-max-offset int Offset máximo em pixels ao alinhar (padrão: 50)
Licença
Flag Tipo Descrição
-machine-id Imprime o ID de licença desta máquina e sai (envie-o para obter uma licença de uso)
-license string Caminho para o arquivo de licença (.lic)
Ou defina PDFCOMPARE_LICENSE, ou coloque pdfcompare.lic ao lado do binário
-license-info Exibe as informações do licenciado e sai

Exemplos

Comparação básica

$ pdfcomparer -a original.pdf -b revised.pdf

Alta qualidade, primeiras 50 páginas

$ pdfcomparer -a original.pdf -b revised.pdf -t 0.02 -dpi 300 -pages 1-50

Paralelismo máximo

$ pdfcomparer -a original.pdf -b revised.pdf -rw 4 -j 8 -o report.pdf

Suprimir ruído de anti-aliasing

$ pdfcomparer -a a.pdf -b b.pdf -align=true -min-diff-pct 3.0 -o report.pdf

Obter ID da máquina para licenciamento

$ pdfcomparer -machine-id

Verificar informações da licença

$ pdfcomparer -license pdfcompare.lic -license-info

Planos de licenciamento

Licença por máquina. Todos os recursos incluídos desde o primeiro dia.

Licença semestral

US$ 750
por 6 meses
  • Todas as opções e flags da CLI
  • Linux, Windows e macOS
  • Atualizações inclusas durante o período
  • Licença vinculada a uma única máquina
Adquirir licença
Economize US$ 300

Licença anual

US$ 1.200
por ano
  • Todas as opções e flags da CLI
  • Linux, Windows e macOS
  • Atualizações inclusas durante o período
  • Licença vinculada a uma única máquina
Adquirir licença

Para adquirir, execute pdfcomparer -machine-id e envie o ID para [email protected]