<br><br><div><span class="gmail_quote">2008/3/5, Carl Worth <<a href="mailto:cworth@cworth.org">cworth@cworth.org</a>>:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
On Wed, 5 Mar 2008 20:28:11 +0100, "Aubanel MONNIER" wrote:<br> > Just to let you know you cairo developers that I setup an inkscape "Blue<br> > print" about color management.<br> > <a href="https://blueprints.launchpad.net/inkscape/+spec/icc-for-cairo">https://blueprints.launchpad.net/inkscape/+spec/icc-for-cairo</a><br>
> It tries to precise use cases and proposes a draft API for cairo. I hope it<br> > helps to get this supported quicker.<br> > It's a wiki, so feel free to discuss/edit.<br> <br> <br>Hello there!<br> <br> Thanks so much for sharing this with us.<br>
<br> I'd definitely love to see cairo pick up the necessary functionality<br> so that it can generate PDF suitable for pre-press needs.<br> <br> You mentioned elsewhere in this thread that you would expect to see<br>
cairo grow a dependence on littleCMS. Personally, that sounds like<br> exactly the right thing to me. Color management should be a problem<br> that is handled well by a separate tool rather than something that<br> cairo should try to grow and take over on its own.<br>
<br> As for platforms that have "native" color management systems, can<br> littleCMS sit on top of them already or be made to do so?<br> <br> So the first thing I'm surprised by is that the API proposal so far<br>
isn't using littleCMS types in the interfaces. Shouldn't things like a<br> color profile just be created with existing littleCMS APIs and then<br> passed to cairo?</blockquote><div><br>It's just a matter of coding style, the lcms API is slightly different ( typically type names) and a bit cumbersome in some cases.<br>
So basically the proposal is just a rewriting of the API, and implementation forwards that to lcms (or an other cms).<br></div><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Oh, and if I haven't made it perfectly clear already, I'm a total<br> idiot when it comes to color. In the API proposal so far I see three<br> separate notions being proposed to cairo:<br> <br> color intent<br>
<br> color profile<br> <br> color profile mapping<br> <br> Can you explain (or provide a reference for me) for what the three<br> notions are? </blockquote><div><br>the lcms API documentation linked in the wiki is clearer that anything I could express (I'm myself no expert in cms, I just need it ;) ). <br>
Yu can also find a lot of reference information on the International Color Consortium web site: <a href="http://www.color.org/iccprofile.xalter">http://www.color.org/iccprofile.xalter</a><br>Here is my understanding on your questioons:<br>
A color profile is a file describing a colorspace. You cans stack colorspaces: the first and the last are the source and the destination<br> </div><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
In particular, this function confuses me considerably:<br> <br> void<br> cairo_surface_add_profile_mapping(cairo_surface_t *surf,<br> cairo_color_profile_t *in,<br> cairo_color_profile_t *out);</blockquote>
<div><br>I realise this is wrong. I'll fix that in the wiki. <br></div><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"> What in the world does that mean? What is the user asking cairo to do<br>
by calling that?<br> <br> And is "color intent" fundamentally separate from "color profile"?<br> That is, is there a reason we couldn't simplify this API down to one<br> new concept being added to cairo (a color profile) and then preferably<br>
just use a littleCMS datatype to express it?</blockquote><div><br>Yes, it's separated. The profile is about the hardware and comes from one file, the intent is about your purpose.<br> </div><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Again, thanks in advance for your patience with this color idiot.</blockquote><div><br>Not sure I know much more thant you on that. But we will try to get this right nonetheless ! <br></div><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
-Carl<br> <br></blockquote></div><br>