Problem
Would it be in scope to be able to use this library to merge multiple PDFs?
Proposed Solution
import (
"log"
"os"
"github.com/gpdf-dev/gpdf"
)
func main() {
// 1. Read existing PDFs from disk (or however they arrive)
coverPage, _ := os.ReadFile("cover.pdf")
attachment, _ := os.ReadFile("terms-and-conditions.pdf")
// 2. Generate a document with gpdf as normal
generated, err := gpdf.NewDocument(
gpdf.WithPageSize(gpdf.A4),
gpdf.WithMargin(40, 40, 40, 60),
).
Row(30).Col(12).Text("Policy Certificate", gpdf.FontSize(18), gpdf.Bold()).
AutoRow().Col(12).Text("Lorem ipsum...").
Build()
if err != nil {
log.Fatal(err)
}
// 3. Merge: cover + generated + attachment
merged, err := gpdf.Merge(
[]gpdf.Source{
{Data: coverPage},
{Data: generated},
{Data: attachment, Pages: gpdf.PageRange{From: 1, To: 3}}, // only first 3 pages
},
gpdf.WithMergeMetadata("Policy Bundle", "Example Ltd", ""),
)
if err != nil {
log.Fatal(err)
}
os.WriteFile("output.pdf", merged, 0644)
}
Alternatives Considered
No response
Scope
document (Layer 2: model)
Problem
Would it be in scope to be able to use this library to merge multiple PDFs?
Proposed Solution
Alternatives Considered
No response
Scope
document (Layer 2: model)