graphitepdf_layout/
error.rs1pub type Result<T> = std::result::Result<T, Error>;
2
3#[derive(Debug, thiserror::Error)]
4pub enum Error {
5 #[error(transparent)]
6 GraphitepdfErrors(#[from] graphitepdf_errors::GraphitePdfError),
7
8 #[error(transparent)]
9 Font(#[from] graphitepdf_font::Error),
10
11 #[error(transparent)]
12 Image(#[from] graphitepdf_image::Error),
13
14 #[error(transparent)]
15 Math(#[from] graphitepdf_math::Error),
16
17 #[error(transparent)]
18 Svg(#[from] graphitepdf_svg::Error),
19
20 #[error(transparent)]
21 Text(#[from] graphitepdf_textkit::Error),
22
23 #[error("layout document must contain at least one page")]
24 EmptyDocument,
25
26 #[error("layout page size must be positive, got {width}x{height}")]
27 InvalidPageSize { width: f32, height: f32 },
28
29 #[error("could not resolve intrinsic dimensions for {kind}")]
30 InvalidNaturalDimensions { kind: &'static str },
31
32 #[error("image source nodes require an explicit height until async asset loading is wired in")]
33 UnresolvedAssetDimensions { kind: &'static str },
34
35 #[error("SVG content is missing valid width and height information")]
36 InvalidSvgDimensions,
37
38 #[error("invalid dimension `{input}`")]
39 InvalidDimension { input: String },
40}