-
Notifications
You must be signed in to change notification settings - Fork 1.2k
/
DTHTMLElementA.m
47 lines (35 loc) · 1.21 KB
/
DTHTMLElementA.m
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
//
// DTHTMLElementA.m
// DTCoreText
//
// Created by Oliver Drobnik on 21.03.13.
// Copyright (c) 2013 Drobnik.com. All rights reserved.
//
#import "DTHTMLElementA.h"
@implementation DTHTMLElementA
{
DTColor *_highlightedTextColor;
}
- (void)applyStyleDictionary:(NSDictionary *)styles
{
[super applyStyleDictionary:styles];
// TODO: get the highlighted color from CSS
self.highlightedTextColor = [DTColor redColor];
}
- (NSAttributedString *)attributedString
{
// super returns a mutable attributed string
NSMutableAttributedString *mutableAttributedString = (NSMutableAttributedString *)[super attributedString];
if (_highlightedTextColor)
{
NSRange range = NSMakeRange(0, [mutableAttributedString length]);
// this additional attribute keeps the highlight color
[mutableAttributedString addAttribute:DTLinkHighlightColorAttribute value:(id)_highlightedTextColor range:range];
// we need to set the text color via the graphics context
[mutableAttributedString addAttribute:(id)kCTForegroundColorFromContextAttributeName value:[NSNumber numberWithBool:YES] range:range];
}
return mutableAttributedString;
}
#pragma mark - Properties
@synthesize highlightedTextColor = _highlightedTextColor;
@end