# oxipdf-theme
Semantic role to resolved style theme system for the [oxipdf](https://crates.io/crates/oxipdf) PDF engine.
Maps `SemanticRole` variants to `ResolvedStyle` values, providing a reusable appearance layer between semantic markup and the rendering engine.
## Built-in Themes
- `Theme::default()` — Clean sans-serif document (Noto Sans)
- `Theme::academic()` — Serif-based academic document (Noto Serif)
- `Theme::technical()` — Monospace-heavy technical document
## Custom Themes via TOML
```toml
[theme]
name = "My Theme"
base_fonts = ["Noto Sans"]
mono_fonts = ["Noto Sans Mono"]
[paragraph]
font_size = 11.0
line_height_multiplier = 1.4
margin_bottom = 6.0
```
Load with `Theme::from_toml()` or `Theme::load()`.
## License
Licensed under either of [Apache License, Version 2.0](../../LICENSE-APACHE) or [MIT License](../../LICENSE-MIT) at your option.