Cha*_*Wei 7 android bytearray webview
大家!我已将大量图片压缩为"pictures.zip"文件.我想将这些图片之一加载到WebView,如下所示:
WebView wv = (WebView)findViewById(R.id.WebView01);
wv.loadDataWithBaseURL(null,"<img src=\"abc.jpg\">", "text/html", "UTF-8", null);
Run Code Online (Sandbox Code Playgroud)
这里,"abc.jpg"是一张已压缩为pictures.zip文件的图片.
我只想解压缩zip文件中的图片并获取图片的字节流,然后从字节流中将图像加载到WebView.
我不想解压缩zip文件中的图片,然后将其保存到SD卡然后加载它.
此外,我不想将pitcture的字节编码为base64,然后将图像加载到WebView,因为这两种方式将非常慢.
据我所知,没有办法满足所有这三个要求.如果您不想将其写入存储,Base64对其进行编码并将其直接加载到图像标签中可能是您最好的选择,尽管您仍然可以将其写入内部存储并在webview中显示.
private static final String HTML_FORMAT = "<img src=\"data:image/jpeg;base64,%1$s\" />";
private static void openJpeg(WebView web, byte[] image)
{
String b64Image = Base64.encode(image, Base64.DEFAULT);
String html = String.format(HTML_FORMAT, b64Image);
web.loadData(html, "text/html", "utf-8");
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5500 次 |
| 最近记录: |