Skip to content

Commit 256c846

Browse files
committed
refactor: 修复缩略图排序问题
1 parent 809e03d commit 256c846

1 file changed

Lines changed: 12 additions & 12 deletions

File tree

src/components/BootstrapBlazor.PdfReader/PdfReader.razor.js

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -143,19 +143,19 @@ const addEventListener = (el, pdfViewer, eventBus, invoke, options) => {
143143
if (options.enableThumbnails) {
144144
const thumbnailsContainer = el.querySelector(".bb-view-thumbnails");
145145
pdfViewer.getPagesOverview().map(async (p, i) => {
146-
const page = await pdfViewer.pdfDocument.getPage(i + 1);
147-
const canvas = await makeThumb(page);
148-
const img = document.createElement("img");
149-
img.src = canvas.toDataURL();
150-
151146
const item = document.createElement("div");
152147
item.classList.add("bb-view-thumbnail-item");
153148
if (pdfViewer.currentPageNumber === i + 1) {
154149
item.classList.add("active");
155150
}
156-
item.setAttribute("data-bb-page", i + 1)
157-
item.appendChild(img);
151+
item.setAttribute("data-bb-page", `${i + 1}`);
158152
thumbnailsContainer.appendChild(item);
153+
154+
const page = await pdfViewer.pdfDocument.getPage(i + 1);
155+
const canvas = await makeThumb(page);
156+
const img = document.createElement("img");
157+
img.src = canvas.toDataURL();
158+
item.appendChild(img);
159159
});
160160

161161
EventHandler.on(thumbnailsContainer, "click", ".bb-view-thumbnail-item", e => {
@@ -252,20 +252,20 @@ const updateScale = (pdfViewer, button, rate) => {
252252
pdfViewer.currentScaleValue = v / 100;
253253
}
254254

255-
const makeThumb = page => {
255+
const makeThumb = async page => {
256256
const outputScale = window.devicePixelRatio || 1;
257257
const vp = page.getViewport({ scale: 1 });
258258
const canvas = document.createElement("canvas");
259259
const scaleSize = 1;
260260
canvas.width = vp.width * scaleSize * outputScale;
261261
canvas.height = vp.height * scaleSize * outputScale;
262262

263-
return page.render({
263+
await page.render({
264264
canvasContext: canvas.getContext("2d"),
265265
viewport: page.getViewport({ scale: scaleSize * outputScale })
266-
}).promise.then(function () {
267-
return canvas;
268-
})
266+
}).promise;
267+
268+
return canvas;
269269
}
270270

271271
export function dispose(id) {

0 commit comments

Comments
 (0)