-
Notifications
You must be signed in to change notification settings - Fork 60
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
CMYK #6
Comments
I have been holding off on device specific color spaces because of the hairy business around different devices. The values of CMYK depends on printers and the colors of their ink, which makes it particularly tricky, but I think I saw some "standard" formula somewhere that may be "good enough". Same for CMY. It's definitely worth investigating, since they are both very common. :) |
Looks like there's no way to implement accurate CMYK without a color profile, since it depends on paper color, ink, etc. The only possibility without implementing color profile support is the naive implementation, where
Some people may prefer to define their colors this way, so it may still be useful as an input interface, but the colors won't be accurate. |
hm... I think something like let my_rgb = Rgb::new(0.5, 0.3, 0.7);
let my_foo: FooColor = my_rgb.convert::<FooColor>(|channels|{
let a = some_calc(channels[0], channels[2]);
let b = some_cals(channels[1], channels[2]);
FooColor::new(a,b)
}); Then you can also offer official standard profiles and just do s.th. like let my_cmyk = my_rgb.convert::<Cmyk>(Cmyk::Profiles::ISOUncoded_v2); What do you think? |
Yea, something like that is probably the way to go. The main problem with implementing the naive variant is that it can be mistaken for the accurate variant, so I feel like it should be avoided. I'll postpone this for the time being, until a concrete solution comes up, but it looks like some form of color profile support is desirable. A more generic conversion interface can still be independently added. I'll open a couple of issues... |
I think this should be straight forward enough with ICC profiles off the table. Palette's support should mainly be for the naive version (e.g. |
Oh wow, eight years have already passed... I (almost) can't remember which project I needed CMYK support for back then 🤣 |
Ah, yes, I have a better idea of what I'm building now. But other things have also been calling for more attention along the way, so this one had to be patient. 😅 |
It would be cool to be able to convert to an from CMYK :)
The text was updated successfully, but these errors were encountered: