- From: Mike Bremford via GitHub <sysbot+gh@w3.org>
- Date: Wed, 27 Oct 2021 13:49:58 +0000
- To: public-css-archive@w3.org
For displaying these colors on screen, you're absolutely correct. Chris has just posted while i'm typing this out, and I agree - they're identical (although see below). But in print, this approach allows us to define our new color as a _separation_ - if the output device recognises it, it can be used as a fifth "ink" alongside cyan/magenta/yellow/black (and if it doesn't, the fallback is used). This is significant even with modern printing methods: * the output media may not be white. Being able to specify a "white ink" is different to specifying white as an absence of CMYK. This requires a separation. * separations are not just used for ink: glue, glitter, foil, fold-lines are all specified with separations on devices that support them. For many of these the fallback color doesn't matter, but that's how we need to specify them. * separations are reuqired for overprinting. This isn't part of CSS nor should it be, but it's a common extension in css-to-print engines. I'm not going to make a case for Spot colors in PDF, as they're common. I am trying to make a case for a standardized way to specify them in CSS, so that print engines can do so in a compatible way instead of the situation we have now. Just like we've done for `device-cmyk`. Finally to your point about strings-in-calc. That's a very good point, particularly as I realise the concept I was actually going for was this: ```css @color-profile --reflex-blue { components: "PANTONE Reflex Blue C"; fallback: device-cmyk("PANTONE Reflex Blue C" calc("PANTONE Reflex Blue C"*0.723) 0 (calc("PANTONE Reflex Blue C"*0.02)); } ``` That's pretty awful. Some alternatives might be: Use color-mix? ```css @color-profile --reflex-blue { components: "PANTONE Reflex Blue C"; fallback: color-mix(in device-cmyk, white, device-cmyk(1 0.723 0 0.02) "PANTONE Reflex Blue C"); } ``` Use idents, and only idents? ```css @color-profile --reflex-blue { components: PANTONE\ Reflex\ Blue\ C; fallback: device-cmyk(PANTONE\ Reflex\ Blue\ C calc(PANTONE\ Reflex\ Blue\ C*0.723) 0 calc(PANTONE\ Reflex\ Blue\ C*0.02)); ``` Or perhaps a new descriptor which would be completely ignored by anything not PDF-based? ```css @color-profile --reflex-blue { components: x; component-names: "PANTONE Reflex Blue C"; fallback: device-cmyk(x calc(x*0.723) 0 calc(x*0.02)); } ``` The last one is the least horrible to my eyes. -- GitHub Notification of comment by faceless2 Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/6767#issuecomment-952951143 using your GitHub account -- Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config
Received on Wednesday, 27 October 2021 13:50:00 UTC