pkg/modules/pdfengines/README.md
Each new PDF engine capability (bookmarks, watermark, stamp, embed, etc.) requires a matching Makefile entry. The Makefile variables control which engines are passed to Gotenberg at make run and make test-integration time via compose.yaml. Skip this step and make run falls back to the default defined in pdfengines.go, which may not include the new engine.
Every --pdfengines-*-engines flag registered in pdfengines.go needs two additions:
A variable in the Makefile's variable block (around line 60-70):
PDFENGINES_<FEATURE>_ENGINES=<default engines>
A flag in compose.yaml's command args:
- "--pdfengines-<feature>-engines=${PDFENGINES_<FEATURE>_ENGINES}"
The default value must match the fs.StringSlice(...) call for that flag in pdfengines.go.
Rotate was added with two engines (pdfcpu and pdftk):
Makefile (variable block):
PDFENGINES_ROTATE_ENGINES=pdfcpu,pdftk
compose.yaml (command args):
- "--pdfengines-rotate-engines=${PDFENGINES_ROTATE_ENGINES}"