javascript - 从base64数据显示pdf
问题描述
我正在尝试从 base64 数据进行预览。在这里它适用于任何 base64 图像,但如果我使用base64 pdf,那么它显示插件不受支持。这是我的代码。有一个帖子非常相似,但没有达到我的期望。
if(response.responseCode == 1)
{
$("#image-info-content").html('<object data="'+response.data+'"></object>');
$('#image-modal').modal();
}
我也试过type="application/pdf"。仍然无法正常工作。虽然我不想要这个,因为可能有图像或 pdf 文件。提前致谢
response.data 像这里data:application/pdf;base64,JVBERi0xLjMKJeLjz9MKMSAwIG9iago8.......
解决方案
通过这种方式,我们可以在新选项卡中打开 pdf。我在某个地方找到了这个,但我不记得确切的位置
var objbuilder = '';
objbuilder += ('<object width="100%" height="100%"
data="data:application/pdf;base64,');
objbuilder += (myBase64string);
objbuilder += ('" type="application/pdf" class="internal">');
objbuilder += ('<embed src="data:application/pdf;base64,');
objbuilder += (myBase64string);
objbuilder += ('" type="application/pdf" />');
objbuilder += ('</object>');
var win = window.open("#","_blank");
var title = "my tab title";
win.document.write('<html><title>'+ title +'</title><body style="margin-top:
0px; margin-left: 0px; margin-right: 0px; margin-bottom: 0px;">');
win.document.write(objbuilder);
win.document.write('</body></html>');
layer = jQuery(win.document);
推荐阅读
- rest - 如何设计用于操作和可选返回值的 Rest API
- node.js - NodeJS 无法导入自定义模块,尽管它存在
- kotlin - 如何让 KTOR Logging 在 Android 上编译?
- django - DJANGO 多对一
- macos - Mac 中的 Airflow 本地安装将 Dag 文件夹指向 Conda 站点包,而不是 /Users/myuser/airflow/dags
- javascript - 为什么 console.log(new Map
([])) 在 JavaScript 中记录为真,为真? - vue.js - Nuxt Loader - 自定义加载器的节流
- node.js - 跳转到不同页面上的特定 id 部分
- video-streaming - RTMP + AVC:多久发送一次 AVCDecoderConfigurationRecord?
- python - python3 2d维列表编辑问题