Instalacion
Requisitos
- Go 1.22 o posterior
- No se requieren dependencias externas
Instalar
go get github.com/gpdf-dev/gpdf
Configuracion del modulo
Agregue gpdf a su go.mod:
module your-project
go 1.22
require github.com/gpdf-dev/gpdf v1.0.4
gpdf tiene cero dependencias externas — solo utiliza la biblioteca estandar de Go. Sin CGo, sin bibliotecas del sistema, sin pasos de compilacion complejos.
Verificar la instalacion
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
Estructura de paquetes
gpdf esta organizado en tres capas. Importe solo lo que necesite:
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
)
| Paquete | Capa | Proposito |
|---|---|---|
template | 3 | API Builder, Esquema JSON, Go Templates, Componentes |
document | 2 | Tamanos de pagina, Unidades (Mm, Pt, etc.), Estilos, Tipos de nodo |
pdf | 1 | Colores (RGB, Hex, Gray), Writer PDF, Incrustacion de fuentes |
qrcode | — | Generacion de codigos QR |
barcode | — | Generacion de codigos de barras (Code 128) |
Siguientes pasos
- Uso basico — Cree su primer PDF con la API builder
- Diseno de cuadricula — Aprenda el sistema de diseno de 12 columnas