js viewerjs 怎么浏览 base64 dataUrl 格式的图片

这种格式的图片能用 viewer图片浏览器查看吗
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAVcAAAATCAYAAAAkj07WAAAAAXNSR0IArs4c6QAAALtJREFUeF7t1EENACAMBEFwWZ8YJEED+5sK6GNy2T0zZzkCBAgQ+CqwxfWrp2cECBB4AuJqCAQIEAgExDVA9ZIAAQLiagMECBAIBMQ1QPWSAAEC4moDBAgQCATENUD1kgABAuJqAwQIEAgExDVA9ZIAAQLiagMECBAIBMQ1QPWSAAEC4moDBAgQCATENUD1kgABAuJqAwQIEAgExDVA9ZIAAQLiagMECBAIBMQ1QPWSAAEC4moDBAgQCAQuz4Qg9Wxe0CgAAAAASUVORK5CYII=

image.png
viewer.js 可以打开https://img0.baidu.com/it/u=4...,2638096587&fm=253&fmt=auto&app=138&f=PNG?w=500&h=335
这种格式的图片 那上边形式的该怎么使用 viewer.js

阅读 5.1k
4 个回答
function base64ToUrl(base64) {
  const [type, data] = base64.split(',');
  const bytes = window.atob(data);
  const aryBuffer = new ArrayBuffer(bytes.length);
  new Uint8Array(aryBuffer).set(bytes.split('').map(v => v.charCodeAt(0)));
  return window.URL.createObjectURL(new Blob([aryBuffer], {
    type: type.match(/:(.*?);/)[1]
  }));
}

用这个函数把base64转成url试试
base64ToUrl

新手上路,请多包涵

我之前看到过一个解码函数不知道能不能用,我还没用过,就是这个:atob()

没有那么复杂,直接在页面中构建一个IMG,src接数据应该就可以啦。

这种可以直接放在 img 的 src 里面去使用。 css 的 url 里面也可以。

这个叫 dataurl 吧, asseek 的叫 bloburl。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题