簡體   English   中英

來自帶有blockquote的html的NSAttributedString

[英]NSAttributedString from html with blockquote

我有一個帶有blockquote標簽的簡單HTML我想在UILabel顯示(在UITableViewCell里面,所以我不認為使用UIWebView是我問題的解決方案)。

我決定將它轉換為NSAttributedString並且一切正常,但我收到的是引用文本看起來與未被引用的文本完全相同(沒有縮進,沒有塊標記)。

我想問一下,如果有什么方法可以實現類似於這里提到的現代報價的東西嗎? 或者至少在段落的每一行之前使用NSAttributedString引用一些縮進和前綴(即>像oldschool電子郵件引用一樣)?

我知道你在Obj-C中問過這個問題,但我只是點擊了一下,注意到它已經三年沒有答案了,我已經在其他地方完成了這個,所以我不妨分享一下。

let parsedCommentHTML = html.replacingOccurrences(of: "<blockquote>\n", with: "<blockquote>\n<k style=\"color:#ccc; font-size: 2em; font-family: 'Copperplate'\">“</k>")
let blockQuoteCSS = "\nblockquote > p {color:#808080; display: inline;} \n blockquote { background: #f9f9f9;}"
let pCSS = "p {margin-bottom: 0px;}"
let cssStyle = "\(blockQuoteCSS)\n\(pCSS)\n"

return try NSAttributedString(data: ("<html><head><style>\(cssStyle)</style></head><span style=\"font-family: HelveticaNeue-Thin; font-size: 17\">\(parsedCommentHTML)</span></html>").data(using: String.Encoding.unicode)!, options: [NSDocumentTypeDocumentAttribute : NSHTMLTextDocumentType], documentAttributes: nil)

這產生了一個很好的(在我看來)看起來引用: 在此輸入圖像描述

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM