Форум программистов, компьютерный форум, киберфорум
Наши страницы
Objective-C
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
Pro2005
44 / 44 / 3
Регистрация: 27.05.2013
Сообщений: 163
1

Инверсия части изображения при перекрытии другим изображением

05.05.2014, 11:49. Просмотров 900. Ответов 2

Можно ли создать вот такой эффект
Инверсия части изображения при перекрытии другим изображением

Т.е есть белых бокс...и текст (возможно UILabel или UIImageView), суть в том что белый бокс двигается слево на право... И когда он "перекрывает" текст - текст в том месте становится прозрачным... Как-то так...
В какую сторону копать ? Кто что может подсказать ?
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.05.2014, 11:49
Ответы с готовыми решениями:

Разбить спрайт с изображением на части (например, 3х3) и сохранить в массиве
есть спрайт с изображением (изображение квадратное). нужно разбить его на части...

Захват изображения компьютера и сравнение с другим изображением
Добрый день, дамы и господа. Итак, суть задачи: прога должна коим-то образом...

Событие, возникающее при перекрытии двух Ellipse
Люди как мне отловить момент когда, ellipse2 залазит на ellipse1? Если что, то...

Инверсия изображения
Создайте программу преобразования движущегося графического изображения...

При перекрытии окна другими окнами исчезает нарисованное...
При перекрытии окна другими окнами исчезает нарисованное... Как быть? Я рисую...

2
glvrzzz
95 / 71 / 12
Регистрация: 12.12.2012
Сообщений: 214
06.05.2014, 06:05 2
Лучший ответ Сообщение было отмечено Pro2005 как решение

Решение

Попробуйте сделать так:
1. отрисовать фон, а затем текст в CGContext
2. выставить CGContextSetBlendMode в kCGBlendModeExclusion или kCGBlendModeDifference
3. отрисовать прямоугольник поверх.
1
Pro2005
44 / 44 / 3
Регистрация: 27.05.2013
Сообщений: 163
06.05.2014, 15:58  [ТС] 3
Спасибо за подсказку !!! Выставил kCGBlendModeSourceOut )
Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
- (void)drawRect:(CGRect)rect {
    UIFont* font = [UIFont fontWithName:@"Arial" size:38];
    UIColor* textColor = [UIColor whiteColor];
    NSDictionary* stringAttrs = @{ NSFontAttributeName : font, NSForegroundColorAttributeName : textColor };
    NSAttributedString* attrStr = [[NSAttributedString alloc] initWithString:@"Hello" attributes:stringAttrs];
    
    [attrStr drawAtPoint:CGPointMake(10.f, 10.f)];
    
    
    CGContextRef context = UIGraphicsGetCurrentContext();
    CGContextSetBlendMode(context, kCGBlendModeSourceOut);
    
    CGContextSetRGBFillColor(context, 1.0, 1.0, 1.0, 1.0);
    CGContextSetRGBStrokeColor(context, 1.0, 1.0, 1.0, 1.0);
    CGContextFillRect(context, rectForBox_);
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.05.2014, 15:58

Очищение рисунка в panel при перекрытии его другими окнами
Всем добрый день. Изучаю c# пытаюсь написать свой Paint. Столкнулся с траблой...

Фильтр для изображения. Инверсия
Будьте добры можете дописать программу на си шарп с использование, так как не...

Перевод части кода C++ Builder в C# - работа с изображением
Подскажите, пожалуйста, как эти 3 строчки написанные в Builder записать в C#....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru