1
0
Fork 0
codesnap.nvim/generator/src/color.rs

22 lines
587 B
Rust

use std::i64;
use tiny_skia::Color;
pub struct RgbaColor {
pub color: Color,
}
impl Into<RgbaColor> for String {
fn into(self) -> RgbaColor {
let hex_color = &self.to_lowercase()[1..self.len()];
let chars = hex_color.chars().collect::<Vec<char>>();
let splits = &chars
.chunks(2)
.map(|chunk| i64::from_str_radix(&chunk.iter().collect::<String>(), 16).unwrap())
.collect::<Vec<_>>();
RgbaColor {
color: Color::from_rgba8(splits[0] as u8, splits[1] as u8, splits[2] as u8, 255),
}
}
}