diff options
author | Bob Zeleznik <zzzman@gmail.com> | 2020-06-26 20:09:15 -0400 |
---|---|---|
committer | Bob Zeleznik <zzzman@gmail.com> | 2020-06-26 20:09:15 -0400 |
commit | 344d478d6140be1e469cfcd52ca76bbd1c4324f1 (patch) | |
tree | 1ee3ba5dd6a529af2333ada8603550493be141e4 /src/server/ApiManagers/PDFManager.ts | |
parent | 780ef6fec5add6a0b6b05f5fa64f47b1a2b71df4 (diff) | |
parent | 2043e0b55263e8168ccba8387a6b795a052da809 (diff) |
Merge branch 'master' into ink_menu
Diffstat (limited to 'src/server/ApiManagers/PDFManager.ts')
-rw-r--r-- | src/server/ApiManagers/PDFManager.ts | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/server/ApiManagers/PDFManager.ts b/src/server/ApiManagers/PDFManager.ts index d2a9e9cce..e028d628d 100644 --- a/src/server/ApiManagers/PDFManager.ts +++ b/src/server/ApiManagers/PDFManager.ts @@ -2,6 +2,7 @@ import ApiManager, { Registration } from "./ApiManager"; import { Method } from "../RouteManager"; import RouteSubscriber from "../RouteSubscriber"; import { existsSync, createReadStream, createWriteStream } from "fs"; +const pdfjs = require('pdfjs-dist/es5/build/pdf.js'); import * as Pdfjs from 'pdfjs-dist'; import { createCanvas } from "canvas"; const imageSize = require("probe-image-size"); @@ -51,11 +52,13 @@ async function getOrCreateThumbnail(coreFilename: string, pageNum: number, res: } async function CreateThumbnail(coreFilename: string, pageNum: number, res: express.Response, subtree?: string) { - const sourcePath = resolve(pathToDirectory(Directory.pdfs), `${subtree ?? ""}${coreFilename}.pdf`); + const part1 = subtree ?? ""; + const filename = `${part1}${coreFilename}.pdf`; + const sourcePath = resolve(pathToDirectory(Directory.pdfs), filename); const documentProxy = await Pdfjs.getDocument(sourcePath).promise; const factory = new NodeCanvasFactory(); const page = await documentProxy.getPage(pageNum); - const viewport = page.getViewport(1 as any); + const viewport = page.getViewport({ scale: 1, rotation: 0, dontFlip: false }); const { canvas, context } = factory.create(viewport.width, viewport.height); const renderContext = { canvasContext: context, |