gpt4 book ai didi

android - 如何使用 Cordova for Android 打开(不保存)使用 jspdf 生成的 blob?

转载 作者:行者123 更新时间:2023-12-03 16:42:15 44 4
gpt4 key购买 nike

我在尝试使用 Cordova 打开由 jspdf 生成的 PDF 文件 blob 时遇到问题。我发现Android上有很多“安全”措施使得从保存的文件中打开非常困难,对我来说更多是因为我是跨平台应用程序的菜鸟,所以我需要找到一种方法来打开blob而不保存。

我试过了,但控制台显示:“无法在 'URL' 上执行 'createObjectURL':找不到与提供的签名匹配的函数。”

这是我生成 pdf blob 的函数:

   function createPDF(){
console.log("generating pdf...");
var doc = new jsPDF();

doc.text(20, 20, 'Document title');

doc.setFont("courier");
doc.setFontType("normal");
doc.text(20, 30, 'test first line');
doc.text(20, 50, 'test second line');

var blobPDF = doc.output();

var blobUrl = URL.createObjectURL(blobPDF); <--- THE ERROR APPEARS HERE
window.open(blobUrl,'_system','location=yes');
}

我需要的是打开文件,以便 Android 为我提供要打开的可选应用程序(Adobe 阅读器等)。

如何使此代码适用于 Android?我尝试了很多示例,但总是存在某种问题。

以防万一我使用的是 Intel XDK(版本 3522)并且我包含了 File、File-Transfer、InAppBrowser、FileOpener2 插件。

最佳答案

试试这个,对我有用:

var blobPDF =  new Blob([ doc.output() ], { type : 'application/pdf'});
var blobUrl = URL.createObjectURL(blobPDF); //<--- THE ERROR APPEARS HERE

window.open(blobUrl); // will open a new tab

//window.open(blobUrl,'_system','location=yes'); will open a new window

关于android - 如何使用 Cordova for Android 打开(不保存)使用 jspdf 生成的 blob?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39542458/

44 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com