I've got very basic needs:
- reading p tag开发者_StackOverflows - reading span tags - using colors - using fonts and sizesthat's all.
thanks you so much!
kok I solved this in a bit tricky way.
I implemented a HTMLParser to extract the characters that I needed to be formatted
in a different way. than I proceeded to use the string in Core-Text.
my references were
[HTMLParser] https://github.com/zootreeves/Objective-C-HMTL-Parser
remember that this one has a problem by parsing two tags one after another
(e.g. < p >< span >. . . < /span >< /p >)
[kickstart for CoreText] https://github.com/jonasschnelli/I7CoreTextExample
See this open-source project: https://github.com/Cocoanetics/DTCoreText
It won't help you render an attributed string with Core Text, but it will help you convert HTML to an NSAttributedString
.
This question has already been answered better here:
https://stackoverflow.com/a/18886718/187258
No need to use DTCoreText if you're targeting iOS 7 and up (which you should be doing, by now).
Here's a reprint of the code in the answer (important flag: NSHTMLTextDocumentType
):
[[NSAttributedString alloc] initWithData:[htmlString dataUsingEncoding:NSUTF8StringEncoding]
options:@{NSDocumentTypeDocumentAttribute: NSHTMLTextDocumentType,
NSCharacterEncodingDocumentAttribute: @(NSUTF8StringEncoding)}
documentAttributes:nil
error:nil];
精彩评论