4747</ div >
4848
4949< script type ="text/javascript ">
50- var url = '{{ $url }}' ;
51- var pdfjsLib = window [ 'pdfjs-dist/build/pdf' ] ;
52- pdfjsLib . GlobalWorkerOptions . workerSrc = '{{ $pdfjsCDN }}/pdf.js/{{ $pdfjsVersion }}/pdf.worker.js' ;
50+ ( function ( d ) {
51+ var url = '{{ $url }}' ;
52+ var pdfjsLib = window [ 'pdfjs-dist/build/pdf' ] ;
53+ pdfjsLib . GlobalWorkerOptions . workerSrc = '{{ $pdfjsCDN }}/pdf.js/{{ $pdfjsVersion }}/pdf.worker.js' ;
5354
54- pdfjsLib . getDocument ( url ) . promise . then ( function ( pdf ) {
5555 var pageNum = { { $page } } ;
5656 var pageRendering = false ;
5757 var pagePendingNum = null ;
58- var scale = 3 ;
59- var canvas = document . getElementById ( 'pdf-viewer-canvas-{{ $pdf_viewer_index }}' ) ;
58+ var scale = 1.5 ;
59+ var canvas = d . getElementById ( 'pdf-viewer-canvas-{{ $pdf_viewer_index }}' ) ;
6060 var context = canvas . getContext ( '2d' ) ;
61- var loadingWrapper = document . getElementById ( 'pdf-viewer-loading-wrapper-{{ $pdf_viewer_index }}' ) ;
62- var controlsContainer = document . getElementById ( 'pdf-viewer-controls-container-{{ $pdf_viewer_index }}' ) ;
63- var prevPage = document . getElementById ( 'pdf-viewer-button-prev-page-{{ $pdf_viewer_index }}' ) ;
64- var nextPage = document . getElementById ( 'pdf-viewer-button-next-page-{{ $pdf_viewer_index }}' ) ;
65-
66- var pdfNumPages = pdf . numPages ;
67-
68- if ( pageNum > pdfNumPages ) {
69- pageNum = pdfNumPages ;
70- }
71-
72- document . getElementById ( 'pdf-viewer-total-page-{{ $pdf_viewer_index }}' ) . textContent = pdfNumPages ;
73- document . getElementById ( 'pdf-viewer-button-prev-page-{{ $pdf_viewer_index }}' ) . addEventListener ( 'click' , onPrevPage ) ;
74- document . getElementById ( 'pdf-viewer-button-next-page-{{ $pdf_viewer_index }}' ) . addEventListener ( 'click' , onNextPage ) ;
75-
76- showLoader ( ) ;
77- renderPage ( pageNum ) ;
78-
79- function renderPage ( pageNum ) {
80- pdf . getPage ( pageNum ) . then ( function ( page ) {
81- var viewport = page . getViewport ( { scale : scale } ) ;
82- canvas . height = viewport . height ;
83- canvas . width = viewport . width ;
84-
85- var renderContext = {
86- canvasContext : context ,
87- viewport : viewport
88- } ;
89- var renderTask = page . render ( renderContext ) ;
90-
91- renderTask . promise . then ( function ( ) {
92- pageRendering = false ;
93- showContent ( ) ;
94-
95- if ( pagePendingNum !== null ) {
96- renderPage ( pagePendingNum )
97- pagePendingNum = null ;
98- }
99- } ) ;
100- } ) ;
101-
102- document . getElementById ( 'pdf-viewer-current-page-{{ $pdf_viewer_index }}' ) . textContent = pageNum ;
103- }
61+ var loadingWrapper = d . getElementById ( 'pdf-viewer-loading-wrapper-{{ $pdf_viewer_index }}' ) ;
62+ var controlsContainer = d . getElementById ( 'pdf-viewer-controls-container-{{ $pdf_viewer_index }}' ) ;
63+ var prevPage = d . getElementById ( 'pdf-viewer-button-prev-page-{{ $pdf_viewer_index }}' ) ;
64+ var nextPage = d . getElementById ( 'pdf-viewer-button-next-page-{{ $pdf_viewer_index }}' ) ;
10465
10566 function showContent ( ) {
10667 loadingWrapper . style . display = 'none' ;
11475 controlsContainer . style . display = 'none' ;
11576 }
11677
117- function queueRenderPage ( pageNum ) {
118- if ( pageRendering ) {
119- pagePendingNum = pageNum ;
120- } else {
121- renderPage ( pageNum ) ;
78+ showLoader ( ) ;
79+
80+ pdfjsLib . getDocument ( url ) . promise . then ( function ( pdf ) {
81+ var pdfNumPages = pdf . numPages ;
82+
83+ if ( pageNum > pdfNumPages ) {
84+ pageNum = pdfNumPages ;
12285 }
123- }
12486
125- function onPrevPage ( ) {
126- if ( pageNum > 1 ) {
127- pageNum -- ;
128- queueRenderPage ( pageNum ) ;
87+ d . getElementById ( 'pdf-viewer-total-page-{{ $pdf_viewer_index }}' ) . textContent = pdfNumPages ;
88+ d . getElementById ( 'pdf-viewer-button-prev-page-{{ $pdf_viewer_index }}' ) . addEventListener ( 'click' , onPrevPage ) ;
89+ d . getElementById ( 'pdf-viewer-button-next-page-{{ $pdf_viewer_index }}' ) . addEventListener ( 'click' , onNextPage ) ;
90+
91+ renderPage ( pageNum ) ;
92+
93+ function renderPage ( pageNum ) {
94+ pdf . getPage ( pageNum ) . then ( function ( page ) {
95+ var viewport = page . getViewport ( { scale : scale } ) ;
96+ canvas . height = viewport . height ;
97+ canvas . width = viewport . width ;
98+
99+ var renderContext = {
100+ canvasContext : context ,
101+ viewport : viewport
102+ } ;
103+ var renderTask = page . render ( renderContext ) ;
104+
105+ renderTask . promise . then ( function ( ) {
106+ pageRendering = false ;
107+ showContent ( ) ;
108+
109+ if ( pagePendingNum !== null ) {
110+ renderPage ( pagePendingNum )
111+ pagePendingNum = null ;
112+ }
113+ } ) ;
114+ } ) ;
115+
116+ d . getElementById ( 'pdf-viewer-current-page-{{ $pdf_viewer_index }}' ) . textContent = pageNum ;
129117 }
130- }
131118
132- function onNextPage ( ) {
133- if ( pageNum < pdfNumPages ) {
134- pageNum ++ ;
135- queueRenderPage ( pageNum ) ;
119+ function queueRenderPage ( pageNum ) {
120+ if ( pageRendering ) {
121+ pagePendingNum = pageNum ;
122+ } else {
123+ renderPage ( pageNum ) ;
124+ }
136125 }
137- }
138- } , function ( reason ) {
139- console . error ( reason ) ;
140- } ) ;
141- </ script >
126+
127+ function onPrevPage ( ) {
128+ if ( pageNum > 1 ) {
129+ pageNum -- ;
130+ queueRenderPage ( pageNum ) ;
131+ }
132+ }
133+
134+ function onNextPage ( ) {
135+ if ( pageNum < pdfNumPages ) {
136+ pageNum ++ ;
137+ queueRenderPage ( pageNum ) ;
138+ }
139+ }
140+ } , function ( reason ) {
141+ console . error ( reason ) ;
142+ } ) ;
143+ } ) ( document ) ;
144+ </ script >
0 commit comments