aboutsummaryrefslogtreecommitdiff
path: root/src/server/ApiManagers/PDFManager.ts
diff options
context:
space:
mode:
authorusodhi <61431818+usodhi@users.noreply.github.com>2020-07-06 15:33:45 +0530
committerusodhi <61431818+usodhi@users.noreply.github.com>2020-07-06 15:33:45 +0530
commitb442fc347abc267697575c517949ca0ee0dad2f1 (patch)
treefe5e0aca9dbf155196b0e8514cdcadbfc26dc36d /src/server/ApiManagers/PDFManager.ts
parent94137cb3a771ec6afd803f3cff97da86a14dd54f (diff)
parent6b24899bcf2c099163c1ca872d65b6318c11a53b (diff)
Merge branch 'master' of https://github.com/browngraphicslab/Dash-Web into grid_view_secondary
Diffstat (limited to 'src/server/ApiManagers/PDFManager.ts')
-rw-r--r--src/server/ApiManagers/PDFManager.ts9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/server/ApiManagers/PDFManager.ts b/src/server/ApiManagers/PDFManager.ts
index d2a9e9cce..2b4212588 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,
@@ -111,4 +114,4 @@ class NodeCanvasFactory {
canvasAndContext.canvas = null;
canvasAndContext.context = null;
}
-} \ No newline at end of file
+}