Achatar PDF online grátis
Achate todos os campos de formulário e anotações em conteúdo estático de página. Resultados instantâneos, sem upload para nenhum servidor.
Suporta arquivos PDF · até 100 MB
Opções de achatamento
Como funciona
- Selecione ou arraste um arquivo PDF acima.
- Escolha quais elementos achatar (campos de formulário e/ou anotações).
- Clique em «Achatar PDF» para processar o arquivo no seu navegador · nada é enviado.
- Baixe o PDF achatado imediatamente, com todos os elementos interativos convertidos em conteúdo estático.
Por que achatar PDFs?
Achatar PDFs é essencial para finalizar documentos, evitar modificações acidentais e garantir compatibilidade entre sistemas. Ao achatar um formulário, todos os dados inseridos pelo usuário se tornam permanentes e não editáveis. Isso é crucial para documentos jurídicos, contratos, candidaturas concluídas e registros arquivados. O achatamento também reduz ligeiramente o tamanho do arquivo e garante que o PDF pareça idêntico em todos os dispositivos e aplicativos, já que nenhuma interpretação de formulário é necessária.
O que é achatado?
- Campos de formulário · Caixas de texto, caixas de seleção, botões de opção, menus suspensos e campos de assinatura se tornam texto ou gráficos estáticos.
- Anotações · Comentários, destaques, sublinhados, carimbos e outras marcações são mesclados ao fundo da página.
- Valores dos campos · Quaisquer dados inseridos nos campos do formulário são preservados e se tornam conteúdo permanente da página.
- Aparência visual · O layout, as fontes, as cores e o design permanecem exatamente como estavam antes do achatamento.
Quando achatar PDFs
- Formulários preenchidos · Achate após preencher candidaturas, contratos ou pesquisas para finalizar o documento.
- Documentos jurídicos · Garanta que contratos assinados e acordos jurídicos não possam ser modificados após a execução.
- Arquivamento · Achate antes do armazenamento de longo prazo para garantir que os documentos permaneçam inalterados e legíveis.
- Compartilhamento · Envie PDFs achatados quando não quiser que os destinatários modifiquem os campos do formulário.
- Impressão · Achate antes de imprimir para garantir que todo o conteúdo apareça corretamente no papel.
Perguntas frequentes
O PDF ficará diferente após o achatamento?
Não. O achatamento preserva a aparência visual exata do seu PDF. Todos os campos de formulário, anotações e conteúdos ficarão idênticos ao que eram antes. Apenas a interatividade é removida.
Posso desfazer o achatamento?
Não. Uma vez que um PDF é achatado, os campos de formulário e elementos interativos originais são mesclados ao fundo da página. Você não pode recuperá-los. Sempre mantenha uma cópia de backup do PDF original caso precise editá-lo posteriormente.
E se o PDF não tiver campos de formulário?
Se um PDF não contiver campos de formulário nem anotações, o arquivo será processado, mas nenhum achatamento ocorrerá. O arquivo de saída será semelhante ao de entrada. Você pode achatar qualquer PDF com segurança, mesmo aqueles sem elementos interativos.
Meu PDF é enviado para um servidor?
Não. Todo o achatamento acontece localmente no seu navegador. Seu PDF nunca sai do seu dispositivo, garantindo privacidade e segurança totais.
O achatamento reduz o tamanho do arquivo?
Ligeiramente. Remover as definições de campos de formulário pode reduzir o tamanho do arquivo em 1-5% dependendo da estrutura do PDF. No entanto, o achatamento tem como foco principal finalizar documentos, não comprimi-los.
Qual é o limite de tamanho de arquivo?
A ferramenta suporta PDFs de até 100 MB. O tempo de processamento depende do tamanho e complexidade do arquivo. A maioria dos PDFs é achatada em segundos.
O que «achatar um PDF» significa de verdade
«Achatar» é um daqueles verbos das ferramentas PDF que designa várias operações genuinamente diferentes conforme o que está a ser achatado, e a distinção importa porque as operações têm sucesso ou falham por razões diferentes. O achatamento de campos de formulário é a operação que esta ferramenta executa por padrão. Um campo de formulário PDF, no sentido AcroForm, é uma construção lógica: existe um objeto campo no catálogo do documento com um nome como FirstName e um valor como Sasha, e existem uma ou mais anotações widget na página que renderizam visualmente o campo. O widget sabe o que desenhar porque o seu dicionário de aparência (/AP) aponta para um pequeno fluxo de conteúdo que contém os operadores de desenho, as fontes incorporadas e o texto. O campo e o widget são dois objetos distintos: um armazena o dado, o outro a imagem. O achatamento inverte a relação: o fluxo de aparência é desenhado diretamente sobre o fluxo de conteúdo da página como se sempre tivesse feito parte dela, e depois os objetos campo e widget são removidos. Os píxeis ficam idênticos, mas a estrutura de formulário desaparece.
O achatamento de anotações é a operação análoga para anotações fora do formulário: post-its, realces, rasurados, desenhos à mão livre, balões de texto, carimbos. Cada anotação de marcação também tem um fluxo de aparência (/AP/N) que o leitor usa para desenhar a marca; o achatamento escreve esse fluxo sobre a página e remove o objeto anotação. A marca visual permanece, a capacidade de clicar, selecionar, editar ou remover a marca desaparece. Esta ferramenta achata por padrão tanto os campos de formulário como as anotações; as duas caixas acima permitem desativar qualquer uma se quiser conservar um tipo de interatividade enquanto remove o outro.
O achatamento de transparência é outra coisa: a operação que pega num PDF com objetos semitransparentes e converte-os numa coleção de mosaicos totalmente opacos que parecem iguais quando compostos. A conversão arquivística PDF/A-1 precisa desse passo porque PDF/A-1 não permite transparência. PDF/A-2 em diante permite transparência nativamente e salta o passo. Esta ferramenta não faz achatamento de transparência, a coincidência de termos é infeliz mas as operações são distintas. Se precisar de conformidade PDF/A-1, execute primeiro esta ferramenta para achatar os formulários e anotações, depois execute um conversor PDF/A dedicado que trate o passo de transparência.
Como esta ferramenta funciona
Esta ferramenta usa pdf-lib, a biblioteca PDF de JavaScript escrita por Andrew Dillon e mantida como código aberto desde 2018. A pdf-lib é implementada em TypeScript e compilada para cerca de 1,1 MB de JavaScript puro sem dependências nativas nem WebAssembly. Corre em qualquer ambiente JavaScript: o separador do navegador aqui, mas também Node.js, Deno, React Native e service workers. É o padrão de facto para manipulação PDF do lado do navegador: é usada pelo Documenso, pelas funcionalidades de edição PDF de vários produtos SaaS principais e por inúmeras ferramentas internas e pipelines de processamento de formulários.
Quando seleciona um PDF, a API File do navegador entrega os bytes em bruto diretamente à pdf-lib que corre no motor JavaScript da página. A pdf-lib analisa o ficheiro num modelo de objetos, percorre a árvore AcroForm para contar os campos, expõe a contagem à página e espera pelo botão Achatar. Quando clica em Achatar, as opções selecionadas são passadas ao método form.flatten() da pdf-lib, que itera sobre cada campo, regenera os fluxos de aparência para capturar os valores atuais, copia os fluxos de aparência para a página de cada widget no retângulo do widget, e remove os objetos widget e campo do documento. Os bytes resultantes são serializados para um Blob que a página embrulha num URL de download. Nenhum pedido de rede é disparado durante o achatamento. Pode verificar que não há envio: abra as ferramentas de programador do navegador no separador Rede antes de clicar em Achatar, execute a operação e observe se há algum pedido com o conteúdo do seu ficheiro. Não haverá nenhum.
A estrutura AcroForm, brevemente
Quando um PDF contém um formulário interativo, o catálogo do documento inclui uma entrada /AcroForm que aponta para um dicionário AcroForm. Os campos estruturais do dicionário são /Fields (o array de objetos campo, cada um com um nome parcial, um valor atual, um tipo de campo e um array kids de referências a anotações widget), /DR (o dicionário de recursos por defeito que contém as fontes e espaços de cor referenciados pelos fluxos de aparência dos campos), /DA (a string de aparência por defeito, um fragmento de fluxo de conteúdo de uma linha como 0 0 0 rg /Helv 12 Tf que define a cor de texto, fonte e tamanho por defeito), e /NeedAppearances (uma flag booleana).
A flag /NeedAppearances importa porque o achatamento da pdf-lib respeita a aparência armazenada em cada widget. Quando a flag é verdadeira, o leitor é suposto regenerar os fluxos de aparência antes de exibir, portanto os fluxos no disco podem estar desatualizados. A regra prática é regenerar as aparências antes do achatamento, o que esta ferramenta faz por si. Um campo pode ter várias anotações widget em páginas diferentes (útil para grupos de botões de rádio ou blocos de assinatura recorrentes); um widget só pode pertencer a um campo. O widget em si é apenas uma anotação com /Subtype /Widget, uma referência pai ao objeto campo, um rect indicando onde desenhar na página, e um fluxo de aparência /AP/N que é desenhado aí.
Uma breve história dos formulários PDF
- 1996, PDF 1.2, Acrobat 3, AcroForm introduzido. Os campos de formulário são objetos PDF no catálogo do documento; as anotações widget renderizam-nos na página. O modelo é simples, a aparência é fixada pelo autor, e os dados circulam via FDF (Forms Data Format) e XFDF (a variante XML).
- 2002, Adobe adquire a Accelio. A Adobe herda a tecnologia XFA, uma linguagem de definição de formulários baseada em XML desenvolvida no Canadá que a JetForm (depois Accelio) tinha submetido ao W3C em 1999.
- 2003, PDF 1.5, Acrobat 6, formulários XFA introduzidos dentro do PDF. Um formulário XFA é um documento XML completo embebido no PDF como um pacote. O XFA estático renderiza o XML para um layout fixo; o XFA dinâmico altera o layout em resposta a dados, scripts e entrada do utilizador. O XFA dinâmico não pode ser exibido em nada além de Adobe Reader e Adobe Acrobat.
- 2008, PDF 1.7 padronizado como ISO 32000-1. AcroForm e XFA ambos formalmente na especificação, embora XFA seja referenciado a partir de documentação externa da Adobe em vez de estar totalmente especificado inline.
- 2017, PDF 2.0 publicado como ISO 32000-2, XFA depreciado. A norma agora diz que os processadores interativos que suportem XFA «devem indicar claramente ao utilizador quando este está a interagir com um formulário XFA», o que é uma forma educada de dizer que o formato está a caminho do desuso. AcroForm permanece como o único formato de formulário PDF padronizado.
- 2020 em diante, AcroForm é o padrão prático. A maioria dos leitores PDF não-Adobe já não suporta XFA de todo. AcroForm achata de forma limpa com qualquer biblioteca PDF razoável porque a estrutura está bem definida. XFA não achata com ferramentas não-Adobe porque a versão dinâmica exige um motor JavaScript e um motor de layout que essencialmente apenas o Adobe Reader e o Acrobat trazem.
O universo das anotações
PDF define cerca de 25 subtipos de anotação. Os que uma operação de achatamento trata, por ordem aproximada de frequência: Text (o ícone de post-it com janela popup); Highlight, Underline, Squiggly, StrikeOut (o grupo de marcação de texto, cada um com um array /QuadPoints a descrever os quadriláteros a desenhar); FreeText (anotações de texto retangulares colocadas diretamente na página, usadas para legendas e etiquetas inline); Line, Square, Circle, Polygon, PolyLine (o grupo de formas); Ink (traços de caneta à mão livre de uma caneta digital ou stylus); Stamp (imagens de carimbo como «Approved» ou «Confidential»); FileAttachment (um ícone com um ficheiro anexado); Caret (uma pequena marca «inserir texto aqui», muitas vezes emparelhada com Highlight); Popup (a janela flutuante que contém o texto do comentário visível ao utilizador, achatada junto com a anotação de marcação pai); Widget (o grupo de campos de formulário, tratado pelo achatamento AcroForm em vez do achatamento de anotações).
Cada tipo de anotação tem as suas próprias regras de aparência, mas a operação de achatamento não precisa de as conhecer; simplesmente renderiza o que estiver no fluxo /AP/N da anotação sobre a página. Anotações sem /AP (uma pequena minoria, sobretudo PDF mal formados) não podem ser achatadas de forma fiável e geralmente são deixadas intactas. As anotações Link (áreas clicáveis de URL) são tecnicamente anotações mas normalmente não são achatadas por esta ferramenta: a indicação visual (o texto sublinhado) já faz parte do conteúdo da página e não há nada gráfico para incorporar, portanto remover o link só apagaria o destino do clique.
Fluxos de trabalho reais que motivam o achatamento PDF
- Submissão judicial eletrónica via CM/ECF e sistemas similares. O sistema judicial federal dos EUA exige que os PDF preenchíveis sejam achatados antes do envio ao seu sistema de submissão eletrónica CM/ECF. A razão é que o CM/ECF armazena o PDF e os dados do formulário separadamente, e os formulários preenchíveis têm sido uma fonte recorrente de confusão, dados perdidos e tickets de corrupção de campo. Vários tribunais distritais publicam avisos explícitos sobre como achatar. Sistemas similares em tribunais canadianos, britânicos e da UE aplicam a mesma regra. O fluxo padrão é preencher o formulário, achatar e enviar a cópia achatada.
- Plataformas de assinatura eletrónica que lidam imperfeitamente com campos existentes. DocuSign e Adobe Sign ambos têm de fazer algo com os campos AcroForm dos PDF enviados, e a conversão para a sua representação interna de campos de assinatura por vezes perde dados, quebra o alinhamento ou renomeia mal os campos. O Adobe Sign oferece explicitamente um interruptor «achatar ao enviar» para prevenir os erros de conversão. Pré-achatar aqui dá-lhe controlo sobre o que é fixado em vez de entregar essa decisão à plataforma de assinatura.
- Arquivar contratos assinados e registos corporativos. As equipas jurídicas achatam os contratos assinados antes do arquivamento de longo prazo para que o acesso posterior ao contrato não apresente qualquer oportunidade de modificar os dados do formulário. O achatamento torna os valores parte do conteúdo permanente da página. Igualmente comum para registos de RH, declarações fiscais preenchidas e qualquer documento de conformidade que precise de permanecer semanticamente inalterado ao longo de futuras atualizações de software dos leitores.
- Conversão arquivística PDF/A. PDF/A-1 (a norma arquivística de 2005) não permite transparência, multimédia embebido, JavaScript nem conteúdo cifrado, e prefere fortemente a ausência de campos AcroForm, sob a teoria de que um documento arquivístico não deveria depender de um futuro leitor implementar corretamente a semântica dos formulários. Achatar antes da conversão PDF/A-1 é o fluxo padrão. PDF/A-2 e posteriores relaxam algumas destas restrições mas continuam a preferir formulários achatados para fiabilidade arquivística.
- Fluxos de impressão e imprimir-para-PDF. Alguns controladores de impressão lidam com campos de formulário preenchidos de forma inconsistente, especialmente quando o PDF foi preenchido num leitor e impresso noutro (Preview no macOS a ler um PDF preenchido no Acrobat é o caso clássico). Achatar antes de imprimir elimina a variabilidade entre leitores: o fluxo de aparência que estava no ecrã no momento do achatamento é a aparência que vai parar ao papel.
- Partilhar um formulário preenchido quando o destinatário não deve poder editar. O PDF continua a parecer um formulário, mas os campos não podem ser limpos, as caixas não podem ser desmarcadas e os valores não podem ser editados. As flags de campo só-leitura existem para o mesmo propósito, mas o achatamento é mais durável: os leitores não podem ignorar seletivamente a ausência de campos como por vezes ignoram a flag de só-leitura.
Armadilhas comuns e o que significam
- A saída tem campos vazios onde havia valores preenchidos. O PDF foi escrito com
/NeedAppearances truee nunca teve os seus fluxos de aparência de widget gerados; o leitor regenerava-os à medida que o ficheiro era aberto, portanto os valores eram visíveis mas não persistiam. A correção é regenerar as aparências antes do achatamento. Esta ferramenta fá-lo automaticamente, mas algumas outras implementações de achatamento (incluindo algumas ferramentas de linha de comandos) saltam a regeneração e produzem PDF com campos vazios a partir de ficheiros fonte com/NeedAppearances true. - Alguns campos achatam mas outros não. O formulário é uma mistura de AcroForm e XFA, ou XFA puro. Os campos AcroForm achatam; os campos XFA requerem as ferramentas da Adobe porque o layout impulsionado por XML não pode ser renderizado por outras bibliotecas. A correção é ou abrir o PDF no Adobe Acrobat e fazer «Guardar como outro, PDF estendido para leitor» para converter em AcroForm, ou aceitar que os campos XFA permanecerão interativos. Os ficheiros dos serviços públicos canadianos e das autoridades fiscais alemãs ainda são frequentemente apenas XFA.
- As fontes parecem ligeiramente erradas após o achatamento. O fluxo de aparência do formulário referenciava uma fonte pelo nome na string de aparência por defeito
/DAmas a fonte não estava embebida; o leitor PDF substituía uma fonte do sistema no momento de exibir, e o achatamento fixou a substituição. Isto produz texto visualmente correto num leitor que tem o mesmo fallback e visualmente diferente num leitor que não tem. A correção é achatar com Helvetica embebida, o que a pdf-lib faz por defeito; em casos patológicos o PDF fonte precisa da fonte embebida antes do achatamento. - A assinatura digital agora é inválida. Por design. Uma assinatura digital é um hash criptográfico calculado sobre o intervalo de bytes do documento, portanto qualquer alteração estrutural (incluindo achatamento) invalida-a. Se pretende manter a assinatura, não achate. Se pretende achatar, assine depois, não antes. Uma imagem de assinatura desenhada é apenas um gráfico e sobrevive ao achatamento intacta, mas nunca carregou verificação criptográfica em primeiro lugar, apenas uma alegação visual.
- O PDF achatado tem o mesmo tamanho ou maior que o original. O achatamento por vezes aumenta o tamanho do ficheiro. As fontes embebidas que os fluxos de aparência referenciam agora têm de ser incluídas nos recursos de página em vez de como valores por defeito do formulário, e a pdf-lib não deduplica agressivamente os subconjuntos de fontes entre páginas. A diferença é geralmente pequena (menos de 10 por cento), mas nem sempre é uma redução. O propósito do achatamento é estrutural, não de compressão. Para reduzir o tamanho, passe o PDF achatado por Compressor de PDF grátis online.
- Os campos de formulário pré-visualizam bem mas desaparecem após o achatamento. Os campos tinham bits de flag
/Fa marcá-los como Hidden ou NoView (flags de anotação da especificação PDF). Os campos ocultos por definição não têm aparência para desenhar, portanto achatá-los não produz nada na página. É o comportamento correto mas surpreendente se não soubesse que os campos estavam ocultos. Verifique o PDF no modo de edição de formulário do Adobe Acrobat para ver que campos foram marcados como ocultos.
Achatamento só no navegador versus achatamento na nuvem
Todo serviço na nuvem de achatamento PDF (Smallpdf, ILovePDF, PDF24 web, Adobe Acrobat Online, Sejda, DocHub e uma dúzia de operadores menores) envia o seu PDF para os servidores do operador, executa o achatamento aí e devolve a cópia achatada como descarga. O PDF transita pela internet pública cifrado com TLS, repousa no armazenamento do operador durante uma janela que vai de minutos a dias conforme o operador, é achatado pela biblioteca PDF do operador a correr na infraestrutura do operador, e depois é eliminado. As políticas de privacidade geralmente comprometem-se com eliminação em algumas horas até um dia, TLS em trânsito e (para os operadores maiores) infraestrutura certificada ISO/IEC 27001. Os operadores têm razões comerciais para honrar esses compromissos. Também têm registos, instantâneos de backup e fluxos de dados de resposta a incidentes que, em geral, não estão cobertos pelo compromisso de eliminação.
Esta ferramenta não envia o PDF. O código pdf-lib corre no seu separador do navegador, recebe os bytes do ficheiro através da API File, executa o achatamento no motor JavaScript e devolve os bytes achatados como um Blob no mesmo separador. Pode provar que não há envio: abra as ferramentas de programador no separador Rede antes de clicar em Achatar, execute a operação e observe que nenhum pedido é disparado com o conteúdo do seu ficheiro. O código pdf-lib foi carregado uma vez de um CDN no carregamento da página e o navegador guarda-o em cache; a operação de achatamento não faz mais pedidos de rede. O compromisso é o âmbito de funcionalidades: os serviços na nuvem frequentemente agrupam OCR, conversão Word/Excel ou compressão agressiva juntamente com o achatamento. O achatamento do lado do navegador aqui só faz o achatamento. Para OCR ou conversão de formato, os serviços na nuvem são a escolha certa; para um documento sensível em que a postura de privacidade importa, é o navegador.
Mais perguntas frequentes
Que tipos de formulário esta ferramenta trata?
AcroForm em todas as suas variantes: campos de texto, caixas de seleção, botões de rádio, listas pendentes, listas simples, botões de pressão e campos de assinatura (o widget visual, não a assinatura criptográfica). Os formulários XFA não são suportados porque o layout dinâmico do XFA exige o JavaScript e o motor de layout proprietários da Adobe. Se o seu formulário for apenas XFA, o achatamento terá sucesso mas deixará o formulário interativo; abrir o PDF no Adobe Acrobat e guardar como PDF estendido para leitor converte a maioria dos formulários XFA em equivalentes AcroForm que esta ferramenta pode depois achatar.
Posso achatar apenas uma página ou apenas um campo?
Não. Esta ferramenta achata todo o documento. O achatamento seletivo (um campo de cada vez ou uma página de cada vez) requer Adobe Acrobat Pro ou uma biblioteca de desenvolvimento chamada a partir de um script personalizado. Para a maioria dos fluxos, o achatamento total é o que se quer de qualquer modo, já que «alguns campos estáticos, outros editáveis» raramente é a intenção.
Isto preserva marcadores, metadados e anexos?
Sim para marcadores (o esquema do documento), metadados do documento (título, autor, assunto, palavras-chave, datas de criação e modificação), ficheiros e anexos embebidos, grupos de conteúdo opcional (camadas) e estrutura de acessibilidade do PDF etiquetado para conteúdo não relacionado com formulários. As etiquetas relacionadas com formulários são removidas juntamente com os campos, o que é o comportamento esperado para o achatamento. As hiperligações sobrevivem quando «achatar anotações» está desmarcado; quando ambas as opções estão marcadas, as áreas clicáveis das anotações Link também são removidas (o texto sublinhado visível permanece).
E os PDF protegidos com palavra-passe?
O achatamento não pode correr sobre um PDF cifrado: a pdf-lib precisa de ler a estrutura do formulário, e a leitura está bloqueada pela cifragem. Desbloqueie primeiro o PDF com Desbloquear PDF grátis online, depois achate. Se quiser que a saída achatada esteja protegida por palavra-passe, passe-a depois por Protetor de PDF com senha gratuito online. A sequência desbloquear, achatar, proteger em três passos é o fluxo padrão para pipelines arquivísticos de «finalizar e re-proteger».
É o mesmo que imprimir para PDF?
Praticamente similar, estruturalmente diferente. Imprimir para PDF rasteriza ou reimpõe a página através do pipeline de impressão do sistema operativo, o que normalmente achata os campos como efeito secundário mas também recodifica as imagens, reincorpora as fontes em subconjuntos distintos e por vezes muda o tamanho de página ou as margens. O achatamento desta ferramenta opera diretamente sobre a estrutura de objetos PDF, preservando exatamente as imagens, fontes e geometria de página originais. Use imprimir-para-PDF quando quiser uma cópia rasterizada fresca; use o achatamento quando quiser o PDF original apenas com a estrutura de formulário removida.
Existe um equivalente de desktop ou de linha de comandos?
A pdf-lib corre no Node.js (npm install pdf-lib) e a chamada de achatamento é a mesma: await form.flatten() seguida de await pdfDoc.save(). Em linha de comandos, o qpdf tem um equivalente parcial (qpdf --flatten-rotation --generate-appearances) que trata a regeneração de aparência mas não o passo de remoção do formulário; a operação flatten do pdftk faz a remoção mas salta a regeneração de aparência. O item de menu «Achatar campos» do Adobe Acrobat Pro trata nativamente os dois passos e é a referência em matéria de paridade de comportamento.