use fop_types::{Color, Length, Point, Rect, Size};
fn main() {
println!("=== Length Types ===");
let pt = Length::from_pt(72.0);
let inch = Length::from_inch(1.0);
println!("72pt = {}", pt);
println!("1in = {}", inch);
println!("72pt == 1in: {}", pt == inch);
let mm = Length::from_mm(25.4);
println!("25.4mm = {:.2}in", mm.to_inch());
let sum = pt + inch;
println!("72pt + 1in = {}", sum);
println!("\n=== Color Types ===");
let red = Color::RED;
let custom = Color::rgb(128, 64, 192);
println!("Red: {}", red);
println!("Custom: {}", custom);
if let Some(color) = Color::from_hex("#FF00FF") {
println!("Parsed #FF00FF: {}", color);
}
println!("\n=== Geometry Types ===");
let origin = Point::new(Length::from_pt(10.0), Length::from_pt(20.0));
println!("Origin: {:?}", origin);
let size = Size::new(Length::from_pt(100.0), Length::from_pt(200.0));
println!("Size: {:?}", size);
let rect = Rect::from_point_size(origin, size);
println!("Rect: {:?}", rect);
let test_point = Point::new(Length::from_pt(50.0), Length::from_pt(100.0));
println!(
"Point {:?} in rect: {}",
test_point,
rect.contains(test_point)
);
}