【问题标题】:How to preview different pdf file using Phonegap inAppBrowser?如何使用Phonegap inAppBrowser 预览不同的pdf 文件?
【发布时间】:2018-02-07 15:49:17
【问题描述】:

我有一些关于 Cordova Phonegap inAppBrowser 的问题。我已将 inAppBrowser 包含到我的代码中。

function onDeviceReady() {
     var ref = window.open('http://~/Testing.pdf', '_blank', 'location=yes');
     ref.addEventListener('loadstart', function(event) { alert('start: ' + event.url); });
     ref.addEventListener('loadstop', function(event) { alert('stop: ' + event.url); });
     ref.addEventListener('loaderror', function(event) { alert('error: ' + event.message); });
     ref.addEventListener('exit', function(event) { alert(event.type); });
}

我使用代码来预览 pdf 文件。我想问的问题是,如果我想在我的服务器中显示多个 pdf 文件,我必须使用此代码创建多个 html 页面但不同的 pdf 文件链接?

我希望有人可以帮助我,因为我是这方面的新手。

【问题讨论】:

    标签: html cordova pdf phonegap inappbrowser


    【解决方案1】:

    使用像PDF.JS这样的javascript插件怎么样?

    【讨论】:

      【解决方案2】:

      您不能使用 InAppBrowser 来显示 pdf,因为它只是获取 WebView 的一种手段。

      你需要先通过插件FileTransfer下载文件。

      为此,您必须确定设备上因操作系统而异的文件路径。请参阅File plugin 和系统布局以找到具有所需隐私级别的位置。对于这种需求,假设为 Android 的 cordova.file.dataDirectory 和 iOS 的 cordova.file.documentsDirectory

      那么你有两个选择:

      • 通过插件FileOpener2打开它。查看Examples打开pdf资源
      • 或使用 Mozilla 编写的库 PDF.js 构建您自己的 pdf 文件 HTML 阅读器

      第一个解决方案最简单,但您的应用将取决于用户设备上安装了哪些 pdf 阅读器应用,这可能因设备而异。

      第二种解决方案可以让您更好地控制您的应用,避免依赖其他应用,但您必须构建一个完整的阅读器,并且需要了解 HTML canvas 和 JS promise 等内容。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-06-07
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-01-20
        相关资源
        最近更新 更多