2016-03-30 106 views
0

我想显示可以是图像以及pdf的菜单。无法在angularjs pdf查看器中查看pdf

我正在使用ng-pdfviewer来实现此目的。我的控制器代码::

venueApp.controller('venueController',['$scope',PDFViewerService',function($scope,pdf){ 
    $scope.viewer = pdf.Instance("viewer"); 
    $scope.pageLoaded = function(curPage, totalPages) { 
    $scope.currentPage = curPage; 
    $scope.totalPages = totalPages; 
    }; 
    $scope.nextPage = function() { 
    $scope.viewer.nextPage(); 
    }; 

    $scope.prevPage = function() { 
     $scope.viewer.prevPage(); 
    }; 
}]); 

和我的HTML代码::

<a id="image_{[ menu.id ]}" ng-if="menu.filename.indexOf('.pdf') > -1"> 
    <button ng-click="prevPage()">&lt;</button> 
    <button ng-click="nextPage()">&gt;</button> 
    <br> 
    <span>{[currentPage]}/{[totalPages]}</span> 
    <br> 
    <pdfviewer src="{[menu.menu_url]}" on-page-load='pageLoaded(page,total)' id="viewer"></pdfviewer> 
</a> 

我使用{[]}表达evalutaion因为我配置它。现在,在我的控制台,该插件输出正确的信息我想

通过这个插件

src属性更改在控制台打印,新价值是https://d1hpn7r5i0azx7.cloudfront.net/uploads/menu/18/ankush.pdf

loadPDF https://d1hpn7r5i0azx7.cloudfront.net/uploads/menu/18/ankush.pdf

警告:不推荐使用API​​:使用pdfDataRangeTransport,passwordCallback或progressCallback参数调用getDocument - 由pdf.js打印

但是pdf没有被绘制。我对padf观众标签的DOM元素是::

<pdfviewer src="https://d1hpn7r5i0azx7.cloudfront.net/uploads/menu/18/ankush.pdf" on-page-load="pageLoaded(page,total)" id="viewer" class="ng-isolate-scope"><canvas></canvas></pdfviewer> 

我不明白是什么的问题。由于Chrome浏览器也不会显示它,所以只需下载它即可。的链接样本PDF是::

https://d1hpn7r5i0azx7.cloudfront.net/uploads/menu/18/ankush.pdf

而且我在张贴这个问题SO,而不是仅仅在GitHub的插件页面发布,因为我真的认为它必须做一些事情该pdf文件,而不是插件。

P.S它不是我的简历,只是拿了一个从我们公司应聘的池:P

回答

2

我已经使用http://viewerjs.org/与角离线PDF。但在这里,似乎你有在线的PDF路径。那么,为什么你不试图谷歌文档查看器?对于在线文档来说最好。

请看以下链接: https://docs.google.com/gview?url=http://infolab.stanford.edu/pub/papers/google.pdf 您需要更改URL参数与您的路径。

你也可以在你的网站上使用这个链接是iframe如下:

<iframe src="http://docs.google.com/gview?url=http://infolab.stanford.edu/pub/papers/google.pdf&embedded=true" style="width:600px; height:500px;" frameborder="0"></iframe> 
+0

谢谢,对我的作品。现在我只需要对付克服“显示的X框,选择禁止”,我必须在我的clodfront中设置我想 – Aakash

+0

请注意Google文档查看器带宽限制,请参阅https://support.google.com/a/answer/1071518?hl=zh-CN – async5

+0

感谢您提及。它取决于需求,而且viwerjs有替代解决方案。 –