Hi,
I solved it by using:
#if TargetCocoa
self.CGImagePreview= CGImageMBS.CreateImage(self.fullpic)
self.CGImagePreview=self.CGImagePreview.CopyWithColorSpace(self.CGColourSpace)
#endif
When drawing the image.
And:
#if TargetCocoa
if CGImagePreview<>nil then
dim c as CGContextMBS =
CGContextMBS.contextWithCGContext(g.Handle(g.HandleTypeCGContextRef))
dim r as CGRectMBS = CGMakeRectMBS(0, 0, CGImagePreview.Width,
CGImagePreview.Height)
c.DrawPicture(CGImagePreview, r)
c.Flush
end if
#else
if self.fullpic<>nil then
g.DrawPicture(self.fullpic,0,0)
end if
#endif
In the paint event.
self.fullpic is a fully colour managed picture already converted to the correct
monitor RGB profile.
Regards,
Lee Badham
Bodoni Systems Ltd
> Hi,
>
> Is there a way of getting Xojo to display the correct colour in screen?
>
> I’m using LCMS2MBS to convert a colour into the RGB values for my monitor
> using the correct monitor ICC profile. The picture itself has the right RGB
> values in it. However, when displayed in my Xojo App, the colour is displayed
> completely wrong. What is happening is that the picture is being assigned
> ‘Generic RGB Profile.icc’ before display, not the monitor profile.
>
> If I convert my image to ‘Generic RGB Profile’ before creating my picture
> then I would lose the extra gamut my monitor has. Also how would multiple
> monitors work?
>
> Regards,
>
> Lee Badham
>
> Bodoni Systems Ltd
>
>
>
> _______________________________________________
> Mbsplugins_monkeybreadsoftware.info mailing list
> [email protected]
> https://ml01.ispgateway.de/mailman/listinfo/mbsplugins_monkeybreadsoftware.info
_______________________________________________
Mbsplugins_monkeybreadsoftware.info mailing list
[email protected]
https://ml01.ispgateway.de/mailman/listinfo/mbsplugins_monkeybreadsoftware.info