Есть ли простой способ или библиотека, чтобы позволить тексту светиться? - PullRequest
11 голосов
/ 05 августа 2009

Я хотел бы сделать светящийся текст, который выглядит так, будто он светит или излучает свет. На самом деле это будет сделано с некоторой размытостью на заднем плане. Но я не нашел в iPhone SDK ничего такого, что могло бы это сделать.

Ответы [ 3 ]

21 голосов
/ 05 августа 2009

Вы можете сделать это, используя рисунок чистого кварца. Внутри -drawRect: для UIView или -renderInContext: для CALayer следующий код будет рисовать текст и применять свечение вокруг него:

CGContextSetShadowWithColor( context, CGSizeMake( 0.0, 0.0 ), 20.0f, glowColor );   

[text drawAtPoint:CGPointMake(0.5f, 0.5f) withFont:[UIFont fontWithName:@"Helvetica" size:16.0f]];

где text - это NSString, а glowColor - это CGColorRef для свечения, которое вы хотите применить. Этот пример нарисует свечение, которое простирается на 20 пикселей от 16-точечного текста Helvetica и центрируется по тексту.

Вы можете легко преобразовать это в тень, предоставив другое смещение (второй аргумент в первой функции) и используя черный CGColor для тени.

2 голосов
/ 27 августа 2011

Я создал простой проект iOS4 на основе приведенного выше ответа Барда Ларсона и Cocoanetics в моем блоге, нажмите здесь для получения дополнительной информации и источника проекта

2 голосов
/ 05 августа 2009

Как насчет рендеринга текста в изначально прозрачный буфер с использованием желаемого цвета свечения, затем применить к нему размытие, а затем снова визуализировать текст поверх нужного цвета текста.

Затем вы можете нарисовать буфер там, где он должен быть.

См. Также ответы на «Как создать размытый текст в представлении iPhone?» , из которого следует, что в Cocoa Touch отсутствуют какие-либо встроенные фильтры размытия. Вы можете написать свой, конечно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...