diff options
| author | sharkiecodes <lanyi_stroud@brown.edu> | 2025-07-16 10:43:50 -0400 |
|---|---|---|
| committer | sharkiecodes <lanyi_stroud@brown.edu> | 2025-07-16 10:43:50 -0400 |
| commit | 2a0b9477fd8a3f5f8e85e5998f4aa713418ee924 (patch) | |
| tree | c6bf0940bcb6c5950577ab801eb14f81c436bcf2 /src/client/views/pdf | |
| parent | 6ab42243141c2b6474cb4e85421d60f1827e403b (diff) | |
| parent | efd3de67c79f7507840ac02d63f6c173c298dbac (diff) | |
Merge branch 'master' into lanyi-expanded-agent-paper-main
Diffstat (limited to 'src/client/views/pdf')
| -rw-r--r-- | src/client/views/pdf/PDFViewer.tsx | 14 |
1 files changed, 3 insertions, 11 deletions
diff --git a/src/client/views/pdf/PDFViewer.tsx b/src/client/views/pdf/PDFViewer.tsx index 1de945d69..6e8ce0ce9 100644 --- a/src/client/views/pdf/PDFViewer.tsx +++ b/src/client/views/pdf/PDFViewer.tsx @@ -163,25 +163,17 @@ export class PDFViewer extends ObservableReactComponent<IViewerProps> { }; @computed get _scrollHeight() { - return this._pageSizes.reduce((size, page) => size + page.height, 0); + return this._pageSizes.reduce((size, page) => size + page.height, 0) / window.devicePixelRatio; } initialLoad = () => { - const page0or180 = (page: { rotate: number }) => page.rotate === 0 || page.rotate === 180; if (this._pageSizes.length === 0) { const devicePixelRatio = window.devicePixelRatio; document.documentElement?.style.setProperty('--devicePixelRatio', window.devicePixelRatio.toString()); // set so that css can use this to adjust various PDFJs divs - Promise.all( - numberRange(this._props.pdf.numPages).map(i => - this._props.pdf.getPage(i + 1).then(page => ({ - width: (page.view[page0or180(page) ? 2 : 3] - page.view[page0or180(page) ? 0 : 1]) * devicePixelRatio, - height: (page.view[page0or180(page) ? 3 : 2] - page.view[page0or180(page) ? 1 : 0]) * devicePixelRatio, - })) - ) - ).then( + Promise.all(numberRange(this._props.pdf.numPages).map(i => this._props.pdf.getPage(i + 1).then(page => page.getViewport({ scale: devicePixelRatio })))).then( action(pages => { this._pageSizes = pages; - this._props.loaded(pages.lastElement(), this._props.pdf.numPages); + this._props.loaded(pages[0], this._props.pdf.numPages); this.createPdfViewer(); }) ); |
