@progress/kendo-pdfviewer-common 0.1.3 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/es/utils.js +15 -12
- package/dist/es2015/utils.js +15 -12
- package/dist/npm/utils.js +15 -12
- package/package.json +1 -1
package/dist/es/utils.js
CHANGED
|
@@ -4,6 +4,7 @@ import { getDocument, renderTextLayer } from 'pdfjs-dist';
|
|
|
4
4
|
* @hidden
|
|
5
5
|
*/
|
|
6
6
|
export const DEFAULT_ZOOM_LEVEL = 1.25;
|
|
7
|
+
const scale = 3 * window.devicePixelRatio;
|
|
7
8
|
const parsePdfFromBase64String = (base64String) => {
|
|
8
9
|
return atob(base64String.replace(/^(data:application\/pdf;base64,)/gi, ''));
|
|
9
10
|
};
|
|
@@ -110,13 +111,13 @@ export const reloadDocument = (params) => {
|
|
|
110
111
|
*/
|
|
111
112
|
export const print = (pages, done, error) => {
|
|
112
113
|
const dom = document.createElement('div');
|
|
113
|
-
|
|
114
|
+
const dones = pages.map(() => false);
|
|
114
115
|
pages.forEach((page, index) => {
|
|
115
116
|
const viewport = renderCanvas(page, (el) => {
|
|
116
117
|
dom.appendChild(el);
|
|
117
118
|
dones[index] = true;
|
|
118
119
|
if (dones.every(Boolean)) {
|
|
119
|
-
openPrintDialog(dom, viewport.width, viewport.height, done, error);
|
|
120
|
+
openPrintDialog(dom, Math.floor(viewport.width / scale), Math.floor(viewport.height / scale), done, error);
|
|
120
121
|
}
|
|
121
122
|
}, error);
|
|
122
123
|
});
|
|
@@ -132,6 +133,7 @@ const openPrintDialog = (dom, width, height, done, onError) => {
|
|
|
132
133
|
return;
|
|
133
134
|
}
|
|
134
135
|
if (printDialog) {
|
|
136
|
+
printDialog.document.body.style.margin = '0';
|
|
135
137
|
printDialog.document.body.appendChild(dom);
|
|
136
138
|
printDialog.focus();
|
|
137
139
|
setTimeout(() => {
|
|
@@ -146,25 +148,26 @@ const openPrintDialog = (dom, width, height, done, onError) => {
|
|
|
146
148
|
}
|
|
147
149
|
};
|
|
148
150
|
const renderCanvas = (page, done, error) => {
|
|
149
|
-
const viewport = page.getViewport({ scale
|
|
150
|
-
const styles = {
|
|
151
|
+
const viewport = page.getViewport({ scale });
|
|
152
|
+
const styles = {
|
|
153
|
+
width: Math.floor(viewport.width / scale) + 'pt',
|
|
154
|
+
height: Math.floor(viewport.height / scale) + 'pt'
|
|
155
|
+
};
|
|
151
156
|
const pageElement = createElement('div', '', styles);
|
|
152
157
|
const canvas = createElement('canvas', '', {
|
|
153
158
|
width: '100%',
|
|
154
159
|
height: '100%'
|
|
155
160
|
});
|
|
156
|
-
const canvasContext = canvas.getContext('2d');
|
|
157
161
|
canvas.height = viewport.height;
|
|
158
162
|
canvas.width = viewport.width;
|
|
163
|
+
const canvasContext = canvas.getContext('2d');
|
|
159
164
|
pageElement.appendChild(canvas);
|
|
160
165
|
page.render({ canvasContext, viewport })
|
|
161
166
|
.promise.then(() => {
|
|
162
|
-
const printContent = new Image();
|
|
167
|
+
const printContent = new Image(Math.floor((viewport.width / scale)), Math.floor((viewport.height / scale)));
|
|
163
168
|
printContent.src = canvas.toDataURL();
|
|
164
169
|
pageElement.removeChild(canvas);
|
|
165
170
|
pageElement.appendChild(printContent);
|
|
166
|
-
printContent.width = canvas.width;
|
|
167
|
-
printContent.height = canvas.height;
|
|
168
171
|
const onload = () => {
|
|
169
172
|
printContent.removeEventListener('load', onload);
|
|
170
173
|
done(pageElement);
|
|
@@ -183,19 +186,19 @@ const createElement = function (name, className, styles) {
|
|
|
183
186
|
return element;
|
|
184
187
|
};
|
|
185
188
|
const renderPage = (page, zoom, error) => {
|
|
186
|
-
const viewport = page.getViewport({ scale
|
|
189
|
+
const viewport = page.getViewport({ scale });
|
|
187
190
|
const styles = {
|
|
188
|
-
width: viewport.width + '
|
|
189
|
-
height: viewport.height + '
|
|
191
|
+
width: (Math.floor(viewport.width / scale) * zoom) + 'pt',
|
|
192
|
+
height: (Math.floor(viewport.height / scale) * zoom) + 'pt'
|
|
190
193
|
};
|
|
191
194
|
const pageElement = createElement('div', 'k-page', styles);
|
|
192
195
|
const canvas = createElement('canvas', '', {
|
|
193
196
|
width: '100%',
|
|
194
197
|
height: '100%'
|
|
195
198
|
});
|
|
196
|
-
const canvasContext = canvas.getContext('2d');
|
|
197
199
|
canvas.height = viewport.height;
|
|
198
200
|
canvas.width = viewport.width;
|
|
201
|
+
const canvasContext = canvas.getContext('2d');
|
|
199
202
|
pageElement.appendChild(canvas);
|
|
200
203
|
page.render({ canvasContext, viewport })
|
|
201
204
|
.promise.then(() => {
|
package/dist/es2015/utils.js
CHANGED
|
@@ -4,6 +4,7 @@ import { getDocument, renderTextLayer } from 'pdfjs-dist';
|
|
|
4
4
|
* @hidden
|
|
5
5
|
*/
|
|
6
6
|
export const DEFAULT_ZOOM_LEVEL = 1.25;
|
|
7
|
+
const scale = 3 * window.devicePixelRatio;
|
|
7
8
|
const parsePdfFromBase64String = (base64String) => {
|
|
8
9
|
return atob(base64String.replace(/^(data:application\/pdf;base64,)/gi, ''));
|
|
9
10
|
};
|
|
@@ -110,13 +111,13 @@ export const reloadDocument = (params) => {
|
|
|
110
111
|
*/
|
|
111
112
|
export const print = (pages, done, error) => {
|
|
112
113
|
const dom = document.createElement('div');
|
|
113
|
-
|
|
114
|
+
const dones = pages.map(() => false);
|
|
114
115
|
pages.forEach((page, index) => {
|
|
115
116
|
const viewport = renderCanvas(page, (el) => {
|
|
116
117
|
dom.appendChild(el);
|
|
117
118
|
dones[index] = true;
|
|
118
119
|
if (dones.every(Boolean)) {
|
|
119
|
-
openPrintDialog(dom, viewport.width, viewport.height, done, error);
|
|
120
|
+
openPrintDialog(dom, Math.floor(viewport.width / scale), Math.floor(viewport.height / scale), done, error);
|
|
120
121
|
}
|
|
121
122
|
}, error);
|
|
122
123
|
});
|
|
@@ -132,6 +133,7 @@ const openPrintDialog = (dom, width, height, done, onError) => {
|
|
|
132
133
|
return;
|
|
133
134
|
}
|
|
134
135
|
if (printDialog) {
|
|
136
|
+
printDialog.document.body.style.margin = '0';
|
|
135
137
|
printDialog.document.body.appendChild(dom);
|
|
136
138
|
printDialog.focus();
|
|
137
139
|
setTimeout(() => {
|
|
@@ -146,25 +148,26 @@ const openPrintDialog = (dom, width, height, done, onError) => {
|
|
|
146
148
|
}
|
|
147
149
|
};
|
|
148
150
|
const renderCanvas = (page, done, error) => {
|
|
149
|
-
const viewport = page.getViewport({ scale
|
|
150
|
-
const styles = {
|
|
151
|
+
const viewport = page.getViewport({ scale });
|
|
152
|
+
const styles = {
|
|
153
|
+
width: Math.floor(viewport.width / scale) + 'pt',
|
|
154
|
+
height: Math.floor(viewport.height / scale) + 'pt'
|
|
155
|
+
};
|
|
151
156
|
const pageElement = createElement('div', '', styles);
|
|
152
157
|
const canvas = createElement('canvas', '', {
|
|
153
158
|
width: '100%',
|
|
154
159
|
height: '100%'
|
|
155
160
|
});
|
|
156
|
-
const canvasContext = canvas.getContext('2d');
|
|
157
161
|
canvas.height = viewport.height;
|
|
158
162
|
canvas.width = viewport.width;
|
|
163
|
+
const canvasContext = canvas.getContext('2d');
|
|
159
164
|
pageElement.appendChild(canvas);
|
|
160
165
|
page.render({ canvasContext, viewport })
|
|
161
166
|
.promise.then(() => {
|
|
162
|
-
const printContent = new Image();
|
|
167
|
+
const printContent = new Image(Math.floor((viewport.width / scale)), Math.floor((viewport.height / scale)));
|
|
163
168
|
printContent.src = canvas.toDataURL();
|
|
164
169
|
pageElement.removeChild(canvas);
|
|
165
170
|
pageElement.appendChild(printContent);
|
|
166
|
-
printContent.width = canvas.width;
|
|
167
|
-
printContent.height = canvas.height;
|
|
168
171
|
const onload = () => {
|
|
169
172
|
printContent.removeEventListener('load', onload);
|
|
170
173
|
done(pageElement);
|
|
@@ -183,19 +186,19 @@ const createElement = function (name, className, styles) {
|
|
|
183
186
|
return element;
|
|
184
187
|
};
|
|
185
188
|
const renderPage = (page, zoom, error) => {
|
|
186
|
-
const viewport = page.getViewport({ scale
|
|
189
|
+
const viewport = page.getViewport({ scale });
|
|
187
190
|
const styles = {
|
|
188
|
-
width: viewport.width + '
|
|
189
|
-
height: viewport.height + '
|
|
191
|
+
width: (Math.floor(viewport.width / scale) * zoom) + 'pt',
|
|
192
|
+
height: (Math.floor(viewport.height / scale) * zoom) + 'pt'
|
|
190
193
|
};
|
|
191
194
|
const pageElement = createElement('div', 'k-page', styles);
|
|
192
195
|
const canvas = createElement('canvas', '', {
|
|
193
196
|
width: '100%',
|
|
194
197
|
height: '100%'
|
|
195
198
|
});
|
|
196
|
-
const canvasContext = canvas.getContext('2d');
|
|
197
199
|
canvas.height = viewport.height;
|
|
198
200
|
canvas.width = viewport.width;
|
|
201
|
+
const canvasContext = canvas.getContext('2d');
|
|
199
202
|
pageElement.appendChild(canvas);
|
|
200
203
|
page.render({ canvasContext, viewport })
|
|
201
204
|
.promise.then(() => {
|
package/dist/npm/utils.js
CHANGED
|
@@ -6,6 +6,7 @@ const pdfjs_dist_1 = require("pdfjs-dist");
|
|
|
6
6
|
* @hidden
|
|
7
7
|
*/
|
|
8
8
|
exports.DEFAULT_ZOOM_LEVEL = 1.25;
|
|
9
|
+
const scale = 3 * window.devicePixelRatio;
|
|
9
10
|
const parsePdfFromBase64String = (base64String) => {
|
|
10
11
|
return atob(base64String.replace(/^(data:application\/pdf;base64,)/gi, ''));
|
|
11
12
|
};
|
|
@@ -112,13 +113,13 @@ exports.reloadDocument = (params) => {
|
|
|
112
113
|
*/
|
|
113
114
|
exports.print = (pages, done, error) => {
|
|
114
115
|
const dom = document.createElement('div');
|
|
115
|
-
|
|
116
|
+
const dones = pages.map(() => false);
|
|
116
117
|
pages.forEach((page, index) => {
|
|
117
118
|
const viewport = renderCanvas(page, (el) => {
|
|
118
119
|
dom.appendChild(el);
|
|
119
120
|
dones[index] = true;
|
|
120
121
|
if (dones.every(Boolean)) {
|
|
121
|
-
openPrintDialog(dom, viewport.width, viewport.height, done, error);
|
|
122
|
+
openPrintDialog(dom, Math.floor(viewport.width / scale), Math.floor(viewport.height / scale), done, error);
|
|
122
123
|
}
|
|
123
124
|
}, error);
|
|
124
125
|
});
|
|
@@ -134,6 +135,7 @@ const openPrintDialog = (dom, width, height, done, onError) => {
|
|
|
134
135
|
return;
|
|
135
136
|
}
|
|
136
137
|
if (printDialog) {
|
|
138
|
+
printDialog.document.body.style.margin = '0';
|
|
137
139
|
printDialog.document.body.appendChild(dom);
|
|
138
140
|
printDialog.focus();
|
|
139
141
|
setTimeout(() => {
|
|
@@ -148,25 +150,26 @@ const openPrintDialog = (dom, width, height, done, onError) => {
|
|
|
148
150
|
}
|
|
149
151
|
};
|
|
150
152
|
const renderCanvas = (page, done, error) => {
|
|
151
|
-
const viewport = page.getViewport({ scale
|
|
152
|
-
const styles = {
|
|
153
|
+
const viewport = page.getViewport({ scale });
|
|
154
|
+
const styles = {
|
|
155
|
+
width: Math.floor(viewport.width / scale) + 'pt',
|
|
156
|
+
height: Math.floor(viewport.height / scale) + 'pt'
|
|
157
|
+
};
|
|
153
158
|
const pageElement = createElement('div', '', styles);
|
|
154
159
|
const canvas = createElement('canvas', '', {
|
|
155
160
|
width: '100%',
|
|
156
161
|
height: '100%'
|
|
157
162
|
});
|
|
158
|
-
const canvasContext = canvas.getContext('2d');
|
|
159
163
|
canvas.height = viewport.height;
|
|
160
164
|
canvas.width = viewport.width;
|
|
165
|
+
const canvasContext = canvas.getContext('2d');
|
|
161
166
|
pageElement.appendChild(canvas);
|
|
162
167
|
page.render({ canvasContext, viewport })
|
|
163
168
|
.promise.then(() => {
|
|
164
|
-
const printContent = new Image();
|
|
169
|
+
const printContent = new Image(Math.floor((viewport.width / scale)), Math.floor((viewport.height / scale)));
|
|
165
170
|
printContent.src = canvas.toDataURL();
|
|
166
171
|
pageElement.removeChild(canvas);
|
|
167
172
|
pageElement.appendChild(printContent);
|
|
168
|
-
printContent.width = canvas.width;
|
|
169
|
-
printContent.height = canvas.height;
|
|
170
173
|
const onload = () => {
|
|
171
174
|
printContent.removeEventListener('load', onload);
|
|
172
175
|
done(pageElement);
|
|
@@ -185,19 +188,19 @@ const createElement = function (name, className, styles) {
|
|
|
185
188
|
return element;
|
|
186
189
|
};
|
|
187
190
|
const renderPage = (page, zoom, error) => {
|
|
188
|
-
const viewport = page.getViewport({ scale
|
|
191
|
+
const viewport = page.getViewport({ scale });
|
|
189
192
|
const styles = {
|
|
190
|
-
width: viewport.width + '
|
|
191
|
-
height: viewport.height + '
|
|
193
|
+
width: (Math.floor(viewport.width / scale) * zoom) + 'pt',
|
|
194
|
+
height: (Math.floor(viewport.height / scale) * zoom) + 'pt'
|
|
192
195
|
};
|
|
193
196
|
const pageElement = createElement('div', 'k-page', styles);
|
|
194
197
|
const canvas = createElement('canvas', '', {
|
|
195
198
|
width: '100%',
|
|
196
199
|
height: '100%'
|
|
197
200
|
});
|
|
198
|
-
const canvasContext = canvas.getContext('2d');
|
|
199
201
|
canvas.height = viewport.height;
|
|
200
202
|
canvas.width = viewport.width;
|
|
203
|
+
const canvasContext = canvas.getContext('2d');
|
|
201
204
|
pageElement.appendChild(canvas);
|
|
202
205
|
page.render({ canvasContext, viewport })
|
|
203
206
|
.promise.then(() => {
|