如何在phonegap中的相同应用程序中显示PDF文件

时间:2015-04-23 06:52:23

标签: cordova phonegap-plugins phonegap-build pdf-viewer

如何在同一个phonegap应用中显示Pdf文件。我试过Inappbrowser,Mupdf,PDFJS所有正在使用其他pdf viewer显示PDF。我想在同一个应用程序中打开pdf文件。任何人都可以帮助我。谢谢提前

3 个答案:

答案 0 :(得分:3)

(请原谅我的英语不好)我不知道你在“同一个应用程序中”是什么意思,因为inappbrowserMupdfpdf.js都可以这样做。

在Android平台中,最受欢迎的解决方案是发送intent并通过其他pdf查看器打开,因为用户可以选择最喜欢的(您可以尝试File Opener 2)。如果您不喜欢这样,可以在应用中构建一个用于显示pdf的活动,就像MuPDF Viewer一样。如果你想在Cordova / Phonegap webview中打开pdf文件,你需要mozilla的PDF.js,这是一个用于在HTML5画布上渲染pdf文件的pure-js lib,但它比使用本机解决方案慢得多(即使你使用{{ 3}}),所以我不建议。

在iOS平台上更容易。 iOS UIWebView可以原生打开pdf文件,因此您只需使用Crosswalk即可。如果您想要更多功能,可以选择许多插件(如inAppBrowser Plugin)。

希望能帮到你。

答案 1 :(得分:3)

对于cordova来说,sachinM的答案是完美的 - 但有一个扩展 使用uriEncodeComponent(链接)和https://docs.google.com/viewer?url=链接

Doc,Excel,Powerpoint和pdf都支持。

在应用浏览器中使用cordova。

document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
    window.open = cordova.InAppBrowser.open;
        }

            $("body").on("click",function(e){
           var clicked = $(e.target);
         if(clicked.is('a, a *'))
       {
             clicked = clicked.closest("a");
             var link = clicked.attr("href");
            if(link.indexOf("https://") !== -1)
           {
               if(true) //use to be able to determine browser from app
                 {
                    link = "http://docs.google.com/viewer?url=" +  encodeURIComponent(link) + "&embedded=true";
             }

                 window.open(link, "_blank", "location=no,toolbar=no,hardwareback=yes");
                return false;
            }
    }
    });

答案 2 :(得分:1)

您可以使用Google Docs Viewer插件为jQuery在div中显示pdf文档。 点击here