iOS wkwebview加载HTML<img>标签获取本地图片地址

1,362 阅读1分钟

- oc 实现

- (NSString *)htmlForPNGImage:(UIImage *)image{
    NSData *imageData = UIImagePNGRepresentation(image);
    NSString *imageSource = [NSString stringWithFormat:@"data:image/png;base64,%@",[imageData base64EncodedStringWithOptions:NSDataBase64EncodingEndLineWithCarriageReturn]];
    return imageSource;
}

  • swift实现
   func htmlForPNGImage() -> String {
        let img  =  UIImage(named: "me_ic_dub")//本地图片名称
        let imgData = img?.pngData()
        let imgBase64 = imgData?.base64EncodedData(options: Data.Base64EncodingOptions.endLineWithCarriageReturn)
        let str = String(data: imgBase64!, encoding: String.Encoding.utf8)
        let imgPath = "data:image/png;base64,\(str!)"
        return imgPath
    }

-** 测试代码**

let tableHTML = """
        <html>
        <head>
          就是测试玩一玩
        </head>
        <scr>
        <body>
          这里是文档的主体
          <p><a id="runoob" href="https://www.runoob.com/">   <font size="10" color="red">码农晨仔</font> </a></p>
          <p><button onclick="audio()"><font size="10" color="red">我是一个</font> <font size="2" color="black">按钮</font></button></p>
            <img src="\(self.htmlForPNGImage())" width="20" height="20"/>
               <br> </br>
        </body>
        </html>
        """