2017-02-23 35 views
0

我有一个cordova应用程序启动并运行,我有一个扩展文件,它承载了大量的pdf文档。我希望能够从该扩展文件中打开一个pdf文件,并将整个文件转换为基本64字符串,以便从我的应用程序打印该pdf文件。我正在尝试使用这个cordova插件:https://github.com/sarahgoldman/cordova-print-pdf-plugin这很棒,但没有解释如何真正创建base 64字符串。科尔多瓦应用程序 - 从扩展文件打开PDF并转换为Base64字符串

我试图使用

var files = new File([""], "filename.pdf",{type:'application/pdf'}); 
    console.log(files); 
    if (files.length > 0) { 
    getBase64(files[0]); 
    } 
}); 

function getBase64(file) { 
    var reader = new FileReader(); 
    reader.readAsDataURL(file); 
    reader.onload = function() { 
    console.log(reader.result); 
    }; 
    reader.onerror = function (error) { 
    console.log('Error: ', error); 
    }; 

}

其中filename.pdf存储在我的扩展文件,但我没有得到从代码作出适当的反应。

任何帮助,将不胜感激。 谢谢,

回答

0

你真的在一个问两个问题。

扩展文件在科尔多瓦

要获取您的扩展文件的内容,我的建议是科尔多瓦插件: https://github.com/agamemnus/cordova-plugin-xapkreader/tree/cordova-6.5.0 它便于访问的扩展文件的内部文件,所以你可以做这样的事情:

<img src="content://com.test.expansion/myfile.png">

关键是要按照安装说明的点,因为这个插件需要比大多数其他的人我的更多的工作已安装。在Javascript

看看BTOA

base64编码()ATOB()功能。他们将文本转换为Base64编码和从中编码。 将您的PDF内容提供给该功能并将其转交给pdf插件。

相关问题