Skip navigation.
 
mlRe: Forcing Black on RTF Text generated from NSAttributedString
FROM : Douglas Davidson
DATE : Thu Dec 09 19:34:18 2004

On Dec 9, 2004, at 9:56 AM, R. Scott Thompson wrote:


> The default text color for an NSAttributedString is black.  If I
> extract RTF from a plain, black, string the resulting RTF doesn't have
> black in it's table, and it doesn't include a color directive that
> leads me to believe it should be marked as black.
>
> When I take that RTF data to a PC running our application what I get
> out is a gray looking text (for some reason).
>
> I'd like to force the text in my string which doesn't have a color
> associated with it, to use black.  I wrote some code that runs through
> the string and for every text range that doesn't have a color
> associated with it, it tries to set the color for that range to black.
>
> Unfortunately (or not) the addAttribute: routine is clever enough to
> figure out that I'm trying to add black as a color so it refuses to
> actually add the color to the text range.  If I check the string after
> my addition, the attribute for that range of text is still NULL.  :-(
>
> Is there any way to tell the attributed string "No really, I want to
> store black, explicitly, as the foreground color of this range of
> text.... I really, really do!"


I haven't tested this, but you could try using an NSColor that is not
equal to [NSColor blackColor], but whose RGB components are 0.  I
believe it is sufficient to use
colorWithCalibratedRed:green:blue:alpha: but if necessary you could use
a custom NSColor subclass.

Douglas Davidson

Related mailsAuthorDate
mlRe: Forcing Black on RTF Text generated from NSAttributedString Douglas Davidson Dec 9, 19:34
mlRe: Forcing Black on RTF Text generated from NSAttributedString R. Scott Thompson Dec 9, 20:06
mlRe: Forcing Black on RTF Text generated from NSAttributedString R. Scott Thompson Dec 9, 20:46