taron133
2020-10-26 aa8d874c8a3287d41d26566ae32b6ed8d4557ff9
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
<script src="//mozilla.github.io/pdf.js/build/pdf.js"></script>
 
<!--div>
    <button id="prev">Previous</button>
    <button id="next">Next</button>
    &nbsp; &nbsp;
    <span>Page: <span id="page_num"></span> / <span id="page_count"></span></span>
</div-->
 
<form action="index.php?state=0&confirmGDPR=1" method="post">
    <table>
        <tr>
            <td>
                <!--object data="getfile.php?ppolicy=1&id=9999" type="application/pdf" width="100%" height="350px">
                    alt: <a href="getfile.php?ppolicy=1&id=9999">DOC FILE</a>
                </object-->
                <!--iframe src="https://docs.google.com/viewer?url=http://www.pdf995.com/samples/pdf.pdf&embedded=true"
                        style="width: 600px; height: 600px;" frameborder="0">Ваш браузер не поддерживает фреймы</iframe-->
                <!--canvas width="100%" style="border: 1px solid black;direction: ltr; height: 350px;" id="the-canvas"></canvas-->
                <div style="border: 1px solid black;direction: ltr; overflow: scroll; height: 350px; width: 400px" id='pdf-viewer'></div>
            </td>
        </tr>
        <tr>
            <td><input type="submit" style="float: right;width:100px;" value="Schließen" /></td>
        </tr>
    </table>
</form>
{literal}
<script>
    // If absolute URL from the remote server is provided, configure the CORS
    // header on that server.
    var url = 'getfile.php?ppolicy=1&id=9999';
 
    // Loaded via <script> tag, create shortcut to access PDF.js exports.
    var pdfjsLib = window['pdfjs-dist/build/pdf'];
 
    // The workerSrc property shall be specified.
    pdfjsLib.GlobalWorkerOptions.workerSrc = '//mozilla.github.io/pdf.js/build/pdf.worker.js';
 
    var pdfDoc = null,
        pageNum = 1,
        pageRendering = false,
        pageNumPending = null,
        scale = 2,
        //canvas = document.getElementById('the-canvas'),
        canvas = document.getElementById('pdf-viewer')/*,
        ctx = canvas.getContext('2d')*/;
 
    canvas.style.width = (getClientWidth()-10)+'px';
    canvas.style.height = (getClientHeight()-120)+'px';
 
    /**
     * Get page info from document, resize canvas accordingly, and render page.
     * @param num Page number.
     */
    function renderPage(num, canvas) {
        pageRendering = true;
        // Using promise to fetch the page
        pdfDoc.getPage(num).then(function(page) {
            var viewport = page.getViewport({scale: scale});
            canvas.height = viewport.height;
            canvas.width = viewport.width;
 
            page.render({canvasContext: canvas.getContext('2d'), viewport: viewport});
 
            // Render PDF page into canvas context
            /*var renderContext = {
                canvasContext: ctx,
                viewport: viewport
            };
            var renderTask = page.render(renderContext);
 
            // Wait for rendering to finish
            renderTask.promise.then(function() {
                pageRendering = false;
                if (pageNumPending !== null) {
                    // New page rendering is pending
                    renderPage(pageNumPending);
                    pageNumPending = null;
                }
            });*/
        });
 
        // Update page counters
        //document.getElementById('page_num').textContent = num;
    }
 
    /**
     * If another page rendering in progress, waits until the rendering is
     * finised. Otherwise, executes rendering immediately.
     */
    function queueRenderPage(num) {
        if (pageRendering) {
            pageNumPending = num;
        } else {
            renderPage(num);
        }
    }
 
    /**
     * Displays previous page.
     */
    function onPrevPage() {
        if (pageNum <= 1) {
            //return;
            pageNum = pageNum;
        } else
            pageNum--;
        queueRenderPage(pageNum);
    }
    //document.getElementById('prev').addEventListener('click', onPrevPage);
 
    /**
     * Displays next page.
     */
    function onNextPage() {
        if (pageNum >= pdfDoc.numPages) {
            //return;
            pageNum = pageNum;
        } else
            pageNum++;
        queueRenderPage(pageNum);
    }
    //document.getElementById('next').addEventListener('click', onNextPage);
 
    function onChangeOrientation() {
        //debugger;
        canvas.style.width = (getClientWidth()-10)+'px';
        canvas.style.height = (getClientHeight()-120)+'px';
    }
    window.addEventListener("orientationchange", onChangeOrientation, false);
 
    /**
     * Asynchronously downloads PDF.
     */
    pdfjsLib.getDocument(url).promise.then(function(pdfDoc_) {
        pdfDoc = pdfDoc_;
        //document.getElementById('page_count').textContent = pdfDoc.numPages;
 
        // Initial/first page rendering
        //renderPage(pageNum);
 
        viewer = document.getElementById('pdf-viewer');
 
        for(page = 1; page <= pdfDoc.numPages; page++) {
            canvas = document.createElement("canvas");
            canvas.className = 'pdf-page-canvas';
            viewer.appendChild(canvas);
            renderPage(page, canvas);
        }
 
        /*for(page = 1; page <= pdfDoc.numPages; page++) {
            canvas = document.createElement("canvas");
            canvas.className = 'pdf-page-canvas';
            canvas.appendChild(canvas);
            renderPage(page, canvas);
        }*/
    });
</script>
{/literal}