Skip to content

Extract Metadata

huzpsb edited this page Oct 25, 2026 · 1 revision

Extract Metadata

Export all document metadata: the info dictionary (title, author, subject, keywords, dates, producer), XMP metadata and XML metadata streams. Page selection does not apply — metadata is document-wide.

Command line

pdfcpu2 extract -m meta in.pdf outDir

Writes <inBase>.xml (+ XMP if present) into outDir.

Go API

package main

import (
	"context"
	"fmt"
	"os"

	"github.com/huzpsb/pdfcpu2/pkg/api"
	"github.com/huzpsb/pdfcpu2/pkg/pdfcpu"
	"github.com/huzpsb/pdfcpu2/pkg/pdfcpu/model"
)

func main() {
	ctx := context.Background()
	conf := model.NewDefaultConfiguration()

	f, _ := os.Open("in.pdf")
	defer f.Close()

	err := api.ExtractMetadata(ctx, f, func(md pdfcpu.Metadata) error {
		fmt.Println(md.String()) // inspect in code
		return nil
	}, conf)
	if err != nil {
		panic(err)
	}

	// Or to disk
	_ = api.ExtractMetadataFile(ctx, "in.pdf", "./meta", conf)
}

Quick summaries without extraction: Info (pdfcpu2 info), Keywords, Properties.

Clone this wiki locally