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
)
PaqueteCapaProposito
template3API Builder, Esquema JSON, Go Templates, Componentes
document2Tamanos de pagina, Unidades (Mm, Pt, etc.), Estilos, Tipos de nodo
pdf1Colores (RGB, Hex, Gray), Writer PDF, Incrustacion de fuentes
qrcodeGeneracion de codigos QR
barcodeGeneracion de codigos de barras (Code 128)

Siguientes pasos