首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在IE11和Microsoft Edge中嵌入PDF (可能)

在IE11和Microsoft Edge中嵌入PDF (可能)
EN

Stack Overflow用户
提问于 2016-09-06 06:42:32
回答 1查看 3.4K关注 0票数 0

我目前使用一个64位编码的字符串来表示PDF文件,并使用以下代码(简化)将其转换为AngularJS中的blob:

代码语言:javascript
复制
var base64PdfToBlob = function(b64Data: string, contentType: string) {
                    var sliceSize = 512;
                    var byteCharacters = atob(b64Data);
                    var byteArrays = [];

                    for (var offset = 0; offset < byteCharacters.length; offset += sliceSize) {
                        var slice = byteCharacters.slice(offset, offset + sliceSize);

                        var byteNumbers = new Array(slice.length);
                        for (var i = 0; i < slice.length; i++) {
                            byteNumbers[i] = slice.charCodeAt(i);
                        }

                        var byteArray = new Uint8Array(byteNumbers);

                        byteArrays.push(byteArray);
                    }

                    var blob = new Blob(byteArrays, { type: contentType });
                    return blob;
                }

var pdfBlob = base64PdfToBlob(base64Pdf, "application/pdf");
var blobUrl = URL.createObjectURL(pdfBlob);
$scope.pdfDoc = $sce.trustAsResourceUrl(blobUrl);

然后我使用以下代码将pdf嵌入到html中:

代码语言:javascript
复制
<object data="{{pdfDoc}}" type="application/pdf" width="100%" height="100%"></object>

这在chrome、firefox和safari中都有效。这在边或IE11中不起作用。我觉得我已经尝试了所有的方法,但都没有效果。

我尝试过的事情: 1.使用embed和object标签。2.卸载并重装adobe reader。处理adobe reader和IE之间的设置和配置。3.更改IE中的安全设置。

做一个iFrame,新的标签,新的窗口,下载pdf不是一个选项。PDF必须嵌入到当前页面中。我正在阅读的一些文档似乎表明,这在Edge中是不可能的,但在IE中应该可以工作。

我的机器是Windows10,64位,IE11,Adobe Acrobat Reader DC 2015.017.20050

EN

回答 1

Stack Overflow用户

发布于 2018-05-11 07:53:34

URL.createObjectURL()与IE11不兼容。不过,是Mozilla docs state that this function is compatible starting with IE12

我不相信在IE11或Edge中嵌入表示PDF的内联blob数据是可能的。在IE中有一个单独的函数用于处理blobs,称为msSaveOrOpenBlob,但它的缺点是提示用户是否要保存或打开文件。

另请参阅:Open links made by createObjectURL in IE11

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39338471

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档