FROM : George Orthwein
DATE : Fri Jun 30 17:17:59 2006
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
DATE : Fri Jun 30 17:17:59 2006
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
| Related mails | Author | Date |
|---|---|---|
| Kenny Millar | Jun 30, 13:56 | |
| I. Savant | Jun 30, 15:52 | |
| Kenny Millar | Jun 30, 16:09 | |
| I. Savant | Jun 30, 16:23 | |
| Kenny Millar | Jun 30, 16:36 | |
| I. Savant | Jun 30, 16:45 | |
| George Orthwein | Jun 30, 17:17 | |
| I. Savant | Jun 30, 22:52 | |
| Kenny Millar | Jul 1, 14:37 | |
| Andy Lee | Jul 1, 14:56 | |
| Matt Neuburg | Jul 1, 16:19 |






Cocoa mail archive

