ZipReadStream *read = [unzipFile readCurrentFileInZip];
NSMutableData *data = [[NSMutableData alloc] initWithLength:info.length];
int bytesRead= [read readDataWithBuffer:data];
if(bytesRead > 0)
{
[imagesData addObject:data];
[imagesName addObject:info.name];
}
然后我过滤w / c图像显示在uiview内部,w / c图像显示在uiwebview内。我在uiview中显示图像,如下所示:
UIImage *imageForThisQuestion = [[UIImage alloc]initWithData:[imagesData
objectAtIndex:indexOfThisImage]];
这在uiview中运行良好。但是如何在uiwebview中显示一些图像呢?我可以在这里使用标签吗?我的uiwebview也可能以这种格式出现:
"blah blah blah blah <img src...> blah blah blah <img src...>"
答案 0 :(得分:6)
您不希望将文件保存在文件中以在html中引用它,例如&lt; img src =“myimage.png”&gt ;,对吧?您可以使用data URI scheme将图片编码为URI,并使用img标签,例如
&LT; img src =“data:image / png; base64,iVBORw0KGgoAAAANSUhEUgAAAAUA
AAAFCAYAAACNbyblAAAAHElEQVQI12P4 // 8 / w38GIAXDIBKE0DHxgljNBAAO
9TXL0Y4OHwAAAABJRU5ErkJggg ==“&gt;
阅读hear如何对图像的NSData进行base64编码。
答案 1 :(得分:0)
对于想要快速清晰回答并阅读上面提供的整篇文章的人来说,这是您要使用的代码:
NSString* imgInBase64 = [imageObject base64EncodedStringWithOptions:0];
NSString* imgSrcValue = [@"data:image/png;base64," stringByAppendingString:imgInBase64]
并将该字符串注入任何<img src="{{imgSrcValue}}">
元素。注意base64EncodedStringWithOptions的0值可以帮助您避免与产生巨大Base64字符串的图像发生崩溃。您还可以将png更改为任何支持的图像格式
答案 2 :(得分:-1)
您必须使用正确的baseURL
NSString *path = [[NSBundle mainBundle] bundlePath];
NSURL *baseURL = [NSURL fileURLWithPath:path];
[webView loadHTMLString:htmlString baseURL:baseURL];
然后,在您的HTML代码中:
<img src="myimage.png">