Repolode
carlos7ags

carlos7ags/folio

Biblioteca Go para gerar, editar e assinar PDFs, converter HTML em PDF e criar layouts, formulários, códigos de barras e arquivos PDF/A.

Alternativa open source a:Adobe Acrobat

Estrelas
873
Forks
57
Issues abertas
49
Último commit
anteontem

O que é?

Folio é uma biblioteca de PDF para Go. Ela oferece um mecanismo de layout para parágrafos, tabelas, listas, contêineres flex e imagens, além de converter HTML e CSS em PDF no próprio processo, sem precisar de um navegador headless. As páginas podem ser criadas pela API Go, e PDFs existentes podem ser importados como modelos e preenchidos com conteúdo dinâmico.

Além de gerar PDFs, Folio também lê e mescla arquivos, extrai texto e remove texto permanentemente por meio de redação. A biblioteca também cria campos AcroForm, adiciona assinaturas digitais PAdES (B-B, B-T e B-LT) com suporte a assinadores externos e gera arquivos PDF/A e PDFs com tags. O processamento de texto atende a scripts da esquerda para a direita, da direita para a esquerda, Indic e CJK. Entre os códigos de barras disponíveis estão Code128, QR e EAN-13.

Folio inclui uma CLI para mesclar e inspecionar PDFs e extrair texto, além de uma biblioteca compartilhada em C que disponibiliza suas funções para uso em outras linguagens por meio de FFI.

Recursos principais

  • 01Mecanismo de layout com tabelas, listas, contêineres flex, imagens e divisão de conteúdo em quebras de página.
  • 02Conversão de HTML e CSS em PDF executada no próprio processo.
  • 03Processamento de texto para scripts LTR, RTL, Indic e CJK.
  • 04Campos interativos AcroForm, como texto, caixa de seleção, botão de opção, menu suspenso e assinatura.
  • 05Assinaturas digitais PAdES com suporte a assinadores externos, como HSM ou KMS.
  • 06Redação baseada em texto que remove conteúdo dos fluxos de conteúdo.
  • 07Geração de PDF/A e PDF com tags, além de biblioteca compartilhada em C e CLI.

Casos de uso

  • Gerar faturas, relatórios ou recibos em backends Go.
  • Preencher modelos de PDF existentes, como papel timbrado ou certificados.
  • Produzir PDFs para arquivamento ou acessibilidade que precisem de PDF/A ou tags.
  • Assinar ou redigir PDFs em um pipeline de processamento de documentos.

Início rápido

  1. 1

    Instale a biblioteca

    go get github.com/carlos7ags/folio
  2. 2

    Crie um arquivo Go com o exemplo Hello World do README e execute-o

    go run main.go

Antes de usar

  • Requer Go 1.25 ou superior.
  • Alguns recursos de HTML e CSS não são compatíveis; consulte docs/CSS_SUPPORT.md.

Tópicos

Perguntas frequentes

O que é folio?
Biblioteca Go para gerar, editar e assinar PDFs, converter HTML em PDF e criar layouts, formulários, códigos de barras e arquivos PDF/A. Folio é uma biblioteca de PDF para Go. Ela oferece um mecanismo de layout para parágrafos, tabelas, listas, contêineres flex e imagens, além de converter HTML e CSS em PDF no próprio processo, sem precisar de um navegador headless. As páginas podem ser criadas pela API Go, e PDFs existentes podem ser importados como modelos e preenchidos com conteúdo dinâmico.
folio é gratuito? Qual é a licença?
folio é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
folio ainda é mantido?
Manutenção ativa. O último commit de folio foi em 17 de out. de 2026.
Para que posso usar folio?
Gerar faturas, relatórios ou recibos em backends Go. Preencher modelos de PDF existentes, como papel timbrado ou certificados. Produzir PDFs para arquivamento ou acessibilidade que precisem de PDF/A ou tags. Assinar ou redigir PDFs em um pipeline de processamento de documentos.
Como instalar folio?
Instale a biblioteca: go get github.com/carlos7ags/folio Crie um arquivo Go com o exemplo Hello World do README e execute-o: go run main.go
Onde consigo folio?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/carlos7ags/folio

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados