Re: Compositing to custom view in Cocoa
Re: Compositing to custom view in Cocoa
- Subject: Re: Compositing to custom view in Cocoa
- From: "I. Savant" <email@hidden>
- Date: Fri, 30 Jun 2006 16:52:38 -0400
George:
Thanks for this - I hadn't considered that solution.
--
I.S.
On Jun 30, 2006, at 11:17 AM, George Orthwein wrote:
On Jun 30, 2006, at 10:36 AM, Kenny Millar wrote:
Because I need to change the foreground colour too, and every
location on
the 'screen' can have a different forground/background colour.
It would take two operations. You'd composite the text with
transparent background with a solid fill color as source, using
CompositeSourceIn. That colorizes the text and leaves the
transparency. Then you'd draw that over the background color. At
least, I think that should work. :)
If you can't add transparency, I just discovered -
colorizeByMappingGray:toColor:blackMapping:whiteMapping. It kinda
works for me but for some reason the white areas are using the gray
color instead of the specified white color. But I did end up with
custom back/foreground colors.
I'm surprised there is not an NSImage method for using a grayscale
image as a mask. Half the messages in the archives asking about
this topic reference CompositeSourceIn, but I see now that that
will only work if you already have some transparency. There do seem
to be some Quartz methods though:
http://developer.apple.com/documentation/GraphicsImaging/Conceptual/
drawingwithquartz2d/dq_images/chapter_12_section_6.html
Looks like a good candidate for an NSBitmapImageRef category. :)
(though I don't actually know how difficult using the quartz calls
would be...)
George
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Cocoa-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
40gmail.com
This email sent to email@hidden
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Cocoa-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden