Instalacao
Requisitos
- Go 1.22 ou superior
- Nenhuma dependencia externa necessaria
Instalar
go get github.com/gpdf-dev/gpdf
Configuracao do Modulo
Adicione o gpdf ao seu go.mod:
module your-project
go 1.22
require github.com/gpdf-dev/gpdf v1.0.4
gpdf tem zero dependencias externas — utiliza apenas a biblioteca padrao do Go. Sem CGo, sem bibliotecas de sistema, sem etapas complexas de build.
Verificar a Instalacao
package main
import (
"fmt"
"github.com/gpdf-dev/gpdf/document"
"github.com/gpdf-dev/gpdf/template"
)
func main() {
doc := template.New(template.WithPageSize(document.A4))
page := doc.AddPage()
page.AutoRow(func(r *template.RowBuilder) {
r.Col(12, func(c *template.ColBuilder) {
c.Text("gpdf is working!")
})
})
data, err := doc.Generate()
if err != nil {
panic(err)
}
fmt.Printf("Generated PDF: %d bytes\n", len(data))
}
go run main.go
# Output: Generated PDF: 1234 bytes
Estrutura dos Pacotes
gpdf esta organizado em tres camadas. Importe apenas o que voce precisa:
import (
"github.com/gpdf-dev/gpdf" // Facade (re-exports)
"github.com/gpdf-dev/gpdf/template" // Layer 3: Builder API, Components
"github.com/gpdf-dev/gpdf/document" // Layer 2: Types, Styles, Units
"github.com/gpdf-dev/gpdf/pdf" // Layer 1: Colors, PDF primitives
)
| Pacote | Camada | Finalidade |
|---|---|---|
template | 3 | Builder API, JSON Schema, Go Templates, Componentes |
document | 2 | Tamanhos de pagina, Unidades (Mm, Pt, etc.), Estilos, Tipos de no |
pdf | 1 | Cores (RGB, Hex, Gray), PDF Writer, Incorporacao de fontes |
qrcode | — | Geracao de QR code |
barcode | — | Geracao de codigo de barras (Code 128) |
Proximos Passos
- Uso Basico — Crie seu primeiro PDF com a Builder API
- Layout em Grid — Aprenda o sistema de layout de 12 colunas