use crate::geometry::{AspectRatio, Margins, RelativePosition};
use derive_getters::Getters;
use image::Rgba;
use std::fmt::Debug;
#[derive(Debug, Getters)]
pub struct FrameConfig {
aspect_ratio: Option<AspectRatio>,
color: Rgba<u8>,
corner_radius: Option<u32>,
margins: Margins,
position: RelativePosition,
}
impl FrameConfig {
pub fn new(
aspect_ratio: Option<AspectRatio>,
color: Rgba<u8>,
corner_radius: Option<u32>,
margins: Margins,
position: RelativePosition,
) -> Self {
Self {
aspect_ratio,
color,
corner_radius,
margins,
position,
}
}
}
impl Default for FrameConfig {
fn default() -> Self {
Self {
aspect_ratio: None,
color: Rgba([255, 255, 255, 255]),
corner_radius: None,
margins: Margins::default(),
position: RelativePosition::default(),
}
}
}