UNPKG

@pixdif/pdf-parser

Version:
31 lines (30 loc) 864 B
import { Readable } from 'stream'; import { Page } from '@pixdif/parser'; export default class PdfPage extends Page { document; title; proxy; constructor(document, title, proxy) { super(); this.document = document; this.title = title; this.proxy = proxy; } getTitle() { return this.title; } isCached() { return false; } async render() { const canvasFactory = this.document.canvasFactory; const viewport = this.proxy.getViewport({ scale: 2 }); const { canvas, context } = canvasFactory.create(viewport.width, viewport.height); const renderContext = { canvasContext: context, viewport, }; await this.proxy.render(renderContext).promise; return Readable.fromWeb(canvas.encodeStream('png')); } }