更正生成颜色序列不正常循环的问题。
This commit is contained in:
		| @@ -1,4 +1,4 @@ | ||||
| use std::str::FromStr; | ||||
| use std::{str::FromStr, sync::Arc}; | ||||
|  | ||||
| use palette::{ | ||||
|     cam16::{Cam16Jch, Parameters}, | ||||
| @@ -309,17 +309,17 @@ pub fn series( | ||||
|     let origin_color = Srgb::from_str(color) | ||||
|         .map_err(|_| errors::ColorError::UnrecogniazedRGB(color.to_string()))? | ||||
|         .into_format::<f32>(); | ||||
|     let oklch = Oklch::from_color(origin_color.clone()); | ||||
|     let oklch = Arc::new(Oklch::from_color(origin_color.clone())); | ||||
|  | ||||
|     let mut color_series = Vec::new(); | ||||
|     for s in expand_amount..=1 { | ||||
|         let darkened_color = oklch.darken(s as f32 * step); | ||||
|     for s in (1..=expand_amount).rev() { | ||||
|         let darkened_color = Arc::clone(&oklch).darken(s as f32 * step); | ||||
|         let srgb = Srgb::from_color(darkened_color); | ||||
|         color_series.push(format!("{:x}", srgb.into_format::<u8>())); | ||||
|     } | ||||
|     color_series.push(format!("{:x}", origin_color.into_format::<u8>())); | ||||
|     for s in 1..=expand_amount { | ||||
|         let lightened_color = oklch.lighten(s as f32 * step); | ||||
|         let lightened_color = Arc::clone(&oklch).lighten(s as f32 * step); | ||||
|         let srgb = Srgb::from_color(lightened_color); | ||||
|         color_series.push(format!("{:x}", srgb.into_format::<u8>())); | ||||
|     } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user