从UIImage数据创建URL

时间:2017-05-11 18:00:25

标签: html ios swift uiimageview

我的应用中有一个UIImageView。我想在我在应用程序中呈现的一些html内容中显示它的图像。这是一个小的html代码,以html:

显示图像
<td class="title"> <img src="#LOGO_IMAGE#" style="width:100%; max-width:300px; background-color: #cdcdcd">
</td>  

这就是我在Swift中所做的以获取网址(我知道这是不正确的):

let logoString = String(data: imageData, encoding: .utf8)
HTMLContent = HTMLContent.replacingOccurrences(of: "#LOGO_IMAGE#", with: logoString!)  

第1行给我nil 我该如何解决这个问题?

2 个答案:

答案 0 :(得分:0)

let base64String= imageData.base64EncodedStringWithOptions(.allZeros)
let htmlString = "data:image/png;base64, \(base64String)"

然后您可以加载htmlString。

答案 1 :(得分:0)

假设您有一个名为“theImageView”的UIImageView和一个名为“WebView”的UIWebView,那么应该这样做......

    var myHTMLString = "<html><head></head><body bgcolor=#00ffff><p>This is a test</p><p><img src=\"#LOGO_IMAGE#\" style=\"width:100%; max-width:300px; background-color: #cdcdcd\"></p></body></html>"

    if let img = theImageView.image {

        if let pngRepA = UIImagePNGRepresentation(img) {

            let strBase64 = pngRepA.base64EncodedString(options: [])

            let logoString = "data:image/png;base64, \(strBase64)"

            myHTMLString = myHTMLString.replacingOccurrences(of: "#LOGO_IMAGE#", with: logoString)

        }

    }

    theWebView.loadHTMLString(myHTMLString, baseURL: nil)