#[cfg(feature = "serde")]
use serde::Serialize;
use crate::raw::drawing::{
effect::relative_offset::XlsxRelativeOffset, st_types::st_percentage_to_float,
};
#[derive(Debug, Clone, PartialEq)]
#[cfg_attr(feature = "serde", derive(Serialize))]
pub struct RelativeOffset {
pub horizontal_offset: f64,
pub vertical_offset: f64,
}
impl RelativeOffset {
pub(crate) fn from_raw(raw: Option<XlsxRelativeOffset>) -> Option<Self> {
let Some(raw) = raw else { return None };
return Some(Self {
horizontal_offset: st_percentage_to_float(raw.clone().tx.unwrap_or(0)),
vertical_offset: st_percentage_to_float(raw.clone().ty.unwrap_or(0)),
});
}
}