美文网首页固予
iOS 开发_NSAtrributeString与HTML之间的

iOS 开发_NSAtrributeString与HTML之间的

作者: iOS_PM_WEB_尛鹏 | 来源:发表于2017-04-16 11:35 被阅读957次

    【作者前言】:13年入圈,分享些本人工作中遇到的点点滴滴那些事儿,17年刚开始写博客,高手勿喷!以分享交流为主,欢迎各路豪杰点评改进!

    1.应用场景:

    有些编辑器相关的地方需要我们处理富文本与超文本之间的关系

    2.实现目标:

    实现富文本与超文本之间的相互转化

    3.代码说明:

    /** 富文本NSAtrributeString格式转换为超文本HTML格式*/
    - (NSString *)htmlStringByAttributeString:(NSAttributedString *)htmlAttributeString {
        NSString *htmlString;
        NSDictionary *exportParams = @{NSDocumentTypeDocumentAttribute: NSHTMLTextDocumentType,
                                       NSCharacterEncodingDocumentAttribute: [NSNumber numberWithInt:NSUTF8StringEncoding]
                                       };
        NSData *htmlData = [htmlAttributeString dataFromRange:NSMakeRange(0, htmlAttributeString.length) documentAttributes:exportParams error:nil];
        htmlString = [[NSString alloc] initWithData:htmlData encoding:NSUTF8StringEncoding];
        return htmlString;
    }
    
    /** 超文本HTML格式转换为富文本AtrributeString格式*/
    - (NSAttributedString *)attributeStringByHtmlString:(NSString *)htmlString {
        NSAttributedString *attributeString;
        NSData *htmlData = [htmlString dataUsingEncoding:NSUTF8StringEncoding];
        NSDictionary *importParams = @{NSDocumentTypeDocumentAttribute: NSHTMLTextDocumentType,
                                       NSCharacterEncodingDocumentAttribute: [NSNumber numberWithInt:NSUTF8StringEncoding]
                                       };
        NSError *error = nil;
        attributeString = [[NSAttributedString alloc] initWithData:htmlData options:importParams documentAttributes:NULL error:&error];
        return attributeString;
    }
    

    相关文章

      网友评论

      本文标题:iOS 开发_NSAtrributeString与HTML之间的

      本文链接:https://www.haomeiwen.com/subject/wekaattx.html