Performs deterministic structural validation before PDF serialization.
Validation checks object identity, required catalog/page-tree objects, indirect-reference integrity, page counts, and supported PDF versions.
Summary
Types
@type issue() :: %{ :code => atom(), optional(:object_id) => pos_integer(), optional(:reference) => pos_integer(), optional(:expected) => term(), optional(:actual) => term() }
Functions
@spec validate(PaperForge.Document.t()) :: {:ok, map()} | {:error, [issue()]}
@spec validate!(PaperForge.Document.t()) :: map()