feat(pdfengines): add rotate feature

This commit is contained in:
Julien Neuhart
2026-03-18 22:36:20 +01:00
parent 21e300fcec
commit 0663e5f92b
19 changed files with 472 additions and 9 deletions

View File

@@ -32,6 +32,10 @@ var (
// ErrPdfStampSourceNotSupported is returned when a stamp source type
// is not supported by the PDF engine.
ErrPdfStampSourceNotSupported = errors.New("stamp source not supported")
// ErrPdfRotateAngleNotSupported is returned when the rotation angle is
// not supported.
ErrPdfRotateAngleNotSupported = errors.New("rotation angle not supported")
)
// PdfEngineInvalidArgsError represents an error returned by a PDF engine when
@@ -203,6 +207,10 @@ type PdfEngine interface {
// Stamp applies a stamp (on top of page content) to a PDF file.
Stamp(ctx context.Context, logger *zap.Logger, inputPath string, stamp Stamp) error
// Rotate rotates pages of a PDF file by the given angle (90, 180, 270).
// If pages is empty, all pages are rotated.
Rotate(ctx context.Context, logger *zap.Logger, inputPath string, angle int, pages string) error
}
// PdfEngineProvider offers an interface to instantiate a [PdfEngine].