2010-08-31 3 views
0

Я получаю значение от NSFontPanel, что изменяет семейство шрифтов, стиль текста. Но я хочу только стиль шрифта и цвет отдельно, который я выбрал от NSFontPanel.Как получить только стиль шрифта (Жирный, курсив, Полужирный курсив) с панели шрифтов (NSFontPanel) и цвета?

Я не понимаю, как это получить.

NSFont *font =[fontmanager selectedFont]; 
    string =[font fontName]; 
    st = [font pointSize]; 
    color =[TextEntered textColor]; 
  1. В строковой переменной Я получаю семейство шрифтов (e.g.Arial) и стиль шрифта (например, полужирный). но я хочу эти значения отдельно.

  2. И в цветовой переменной я получаю только черный цвет.

Я не могу понять, где я не прав в получении цвета, и какие функции я использовал для получения стиля шрифта ..

ответ

0

Чтобы получить стиль, вы будете использовать [fontmanager traitsOfFont: font]. Что касается цвета, я думаю, вы хотите получить текст как NSAttributedString, а затем получите значение для атрибута NSForegroundColorAttributeName.

Изменить, чтобы добавить: Если предположить, что переменная TextEntered является NSTextField *, использовать что-то вроде этого:

NSAttributedString* theText = [TextEntered attributedStringValue]; 
NSColor* theColor = (NSColor*)[theText attribute: NSForegroundColorAttributeName 
    atIndex: 0 effectiveRange: NULL ]; 

Для зачеркивания, используйте NSStrikethroughStyleAttributeName и для подчеркивания использования NSUnderlineStyleAttributeName.

+0

вы будете плз дать мне один пример .. –

+0

пример получения цвета. и спасибо за ответ .. он работает для получения стиля шрифта. –

+0

, и вы также сообщите мне, как получить удар и подчеркнуть из NSFontPanel. –

Смежные вопросы