Problema concreto → solução funcional

PdfLivre

Aplicação web para operações simples com PDF diretamente no navegador: juntar PDFs e imagens em um único arquivo e extrair a camada textual de um PDF para TXT ou Markdown. Sem conta, sem cadastro e sem envio dos documentos para um servidor de processamento.

Como surgiu

Gratuito significa gratuito até o fim.

A necessidade era simples: reunir vários documentos em um único PDF. Diversos serviços encontrados se apresentavam como gratuitos, mas o problema aparecia no final — depois de selecionar, organizar e processar tudo, alguns liberavam o download apenas mediante pagamento ou assinatura.

Essa experiência levou a duas decisões: não criar um bloqueio comercial escondido no final do processo e não criar infraestrutura de processamento de documentos que a operação não precisa.

Existe uma opção de doação voluntária por PIX, completamente independente das funções de PDF. Não doar não reduz, bloqueia ou altera o funcionamento da ferramenta.

  • Utiliza a ferramenta
  • Processa seus arquivos
  • Baixa o resultado
  • Pode doar, se quiser

Função 1 — Juntar

Juntar PDFs e imagens.

São aceitos PDF, JPEG, PNG e WEBP. Depois de selecionados, os arquivos aparecem em uma lista: é possível adicionar novos itens, alterar a ordem, remover e limpar a seleção. A ordem da lista determina a sequência do PDF resultante.

PDFs têm suas páginas copiadas para o novo documento e imagens são transformadas em páginas. No caso de WEBP, a imagem é convertida localmente para uma representação compatível antes de ser incorporada. Concluída a operação, o navegador gera pdf-livre-juntado.pdf e inicia o download.

Tela real do PdfLivre com as ações Juntar arquivos e Extrair texto
Juntar PDFs · desktop
Tela real do PdfLivre no celular
Mobile
Acervo de arquivos do PdfLivre com a ação Juntar e Baixar
Seleção e geração do PDF · desktop
Acervo de arquivos do PdfLivre no celular
Mobile

Função 2 — Extrair texto

Extrair a camada textual existente.

A função trabalha com um PDF por vez. O usuário seleciona o arquivo e escolhe TXT ou Markdown. O PdfLivre percorre as páginas e recupera a camada textual do documento; havendo texto, o resultado é transformado em arquivo e baixado, usando o nome original como base.

A extração não utiliza OCR. Um PDF formado apenas por imagens digitalizadas pode não possuir camada textual para extrair. Quando nada é encontrado, a aplicação informa a situação em vez de gerar um arquivo vazio como se a operação tivesse funcionado. Extrair texto existente em um PDF não é o mesmo que reconhecer texto dentro de uma imagem.

Tela real de Extrair Texto do PdfLivre
Extrair Texto · desktop

Destaque de engenharia

Processamento local, privacidade por topologia.

As duas operações acontecem no navegador. O arquivo entra pelo dispositivo, é processado em memória e o resultado volta para o próprio dispositivo. As bibliotecas necessárias são executadas no cliente.

Na junção

  • Arquivo no dispositivo
  • Memória do navegador
  • Processamento local
  • Novo PDF em memória
  • Download local

Na extração

  • PDF no dispositivo
  • Memória do navegador
  • Leitura local do documento
  • Texto em memória
  • Download local

A implementação atual não cria upload de PDFs para processamento, banco de documentos, Storage, histórico central de operações, conta de usuário nem serviço de processamento de PDF no servidor. A privacidade não depende apenas de uma mensagem na interface: ela decorre do desenho do fluxo.

O custo computacional acompanha o usuário. Não existe processamento do documento no servidor, mas a capacidade depende do navegador e do dispositivo. Também não há IA no fluxo: as duas funções são determinísticas, apoiadas em bibliotecas de manipulação de PDF, em um parser e em uma regra local simples para produzir TXT ou Markdown.

Ausência de limite artificial programado não deve ser interpretada como capacidade fisicamente ilimitada.

Decisões

O que foi decidido — e o que foi decidido não construir.

Gratuito até a entrega do resultado

Não colocar pagamento entre o processamento e a entrega. A gratuidade não termina justamente quando o usuário precisa baixar aquilo que produziu.

Processar localmente quando não é preciso enviar o documento

Juntar arquivos e ler a camada textual podem ser feitos no navegador. O documento não precisa ir a um servidor de processamento para que a função principal aconteça.

Não criar infraestrutura apenas porque ela poderia existir

Backend, upload, Storage, banco e histórico seriam tecnicamente possíveis. A arquitetura permanece proporcional ao problema atual, com menos componentes e menor responsabilidade sobre documentos de terceiros.

Não exigir conta para uma operação que não precisa de identidade

O usuário chega, realiza a tarefa e sai sem criar uma identidade apenas para processar um documento.

Não adicionar OCR para ampliar artificialmente a promessa

A extração fica limitada ao texto efetivamente disponível no PDF. O limite é explicitado em vez de introduzir outra infraestrutura fora do escopo atual.

Download em vez de armazenamento

O resultado é gerado como arquivo temporário no navegador e baixado. Não é preciso manter um repositório dos resultados produzidos.

Limites atuais

O que o PdfLivre não pretende ser.

Não é uma suíte completa de edição de PDF. A reordenação disponível organiza os arquivos de entrada, não páginas individuais dentro de um PDF. Não foram implementadas como operações principais:

  • dividir PDF
  • reorganizar páginas internas
  • rotacionar páginas
  • comprimir
  • proteger ou desbloquear
  • editar o conteúdo do PDF
  • converter PDF em imagens
  • executar OCR
  • armazenar documentos
  • manter histórico de arquivos

Também não existem hoje pré-visualização do PDF final, prévia ou edição do texto extraído, indicador granular de progresso, cancelamento do processamento iniciado, validação avançada de PDFs protegidos ou malformados e bateria automatizada de testes cobrindo todos os tipos e tamanhos de documento.

Na extração, estruturas complexas como colunas, tabelas e formatação podem não ser reproduzidas fielmente: o objetivo é recuperar a camada textual disponível. A saída Markdown utiliza uma transformação simples e não reconstrói semanticamente toda a estrutura original.

Demonstração

Demonstração em vídeo

Em breve

Quer conhecer a aplicação funcionando?

Se este trabalho despertou seu interesse e você quiser conhecer a aplicação com mais detalhes, entre em contato comigo pelo WhatsApp.

Conversar pelo WhatsApp
Acessar o PdfLivre ↗