Sorry for coming in on this much later, but what exactly are you trying to do?
It looks like you're trying to softproof what rgb prints from the proofer would look like, if the proofer was emulating the printer. Is that correct? Isaac Case Software Engineer PCDT Color Workflow Team Xerox Corporation p 585.265.5472 > -----Original Message----- > From: [EMAIL PROTECTED] [mailto:lcms-user- > [EMAIL PROTECTED] On Behalf Of Steve Mills > Sent: Wednesday, May 21, 2008 10:58 AM > To: lcms-user lcms-user > Subject: Re: [Lcms-user] Confused about cmsCreateMultiprofileTransform > error > > On May 8, 2008, at 19:15:12, Alastair M. Robinson wrote: > > > What you probably could do is create the individual stages of your > > transform with cmsCreateTransform(), convert these transforms to > > DeviceLinks with cmsTransform2DeviceLink(), and then chain the > > devicelinks together using cmsCreateMultiprofileTransform(). > > > I've had time to get back to handling a 4-profile transform and have > run into a problem. I'll start with the profiles in use in my test > case, in this order: > > profs[0] = input (rgb) > profs[1] = printer (cmyk) > profs[2] = proofer (cmyk) > profs[3] = monitor (rgb) > > I first create 2 xforms, one for input -> printer, and another for > proofer -> monitor. > > xform1 = cmsCreateTransform(profs[0], fromFormat, profs[1], > lcmsSpace2lcmsFormat(cmsGetColorSpace(profs[1]), true, > bytesPerChannel), cmsTakeRenderingIntent(profs[0]), 0); > xform2 = cmsCreateTransform(profs[2], > lcmsSpace2lcmsFormat(cmsGetColorSpace(profs[2]), true, > bytesPerChannel), profs[3], toFormat, > cmsTakeRenderingIntent(profs[2]), 0); > > Note that fromFormat is the format for the input data used with the > input profile, and toFormat is the format for the output data used > with the monitor profile. What I might be getting wrong here are the > other 2 formats; xform1's output format, and xform2's input format. > Does my code look correct for those? > > The xforms are then converted to device link profiles: > > link1 = cmsTransform2DeviceLink(xform1, 0); > link2 = cmsTransform2DeviceLink(xform2, 0); > > And the final xform is created from those: > > xform = cmsCreateMultiprofileTransform(links, 2, fromFormat, toFormat, > cmsTakeRenderingIntent(profs[1]), 0); > > The end result is that I get error "Invalid PCS" when GetPhase is > called on the link2 profile - it's icSigRgbData. How do I fix this? > > If I instead call: > > xform = cmsCreateTransform(link1, fromFormat, link2, toFormat, > cmsTakeRenderingIntent(profs[1]), 0); > > which I did just as a test, I get the error "Device link is operating > on wrong colorspace on output" for link1. > > _________________________________________________________ > Steve Mills Me: 952-401-6255 > Senior Software Architect MultiAd > [EMAIL PROTECTED] www.multi-ad.com > > > > ------------------------------------------------------------------------ - > This SF.net email is sponsored by: Microsoft > Defy all challenges. Microsoft(R) Visual Studio 2008. > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > _______________________________________________ > Lcms-user mailing list > Lcms-user@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/lcms-user ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Lcms-user mailing list Lcms-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/lcms-user