UNPKG

pdftoimg-js

Version:

A javascript library that help to convert pdf to img in both platform nodejs and browser

2 lines (1 loc) 2.57 kB
"use strict";var S=Object.create;var m=Object.defineProperty;var b=Object.getOwnPropertyDescriptor;var T=Object.getOwnPropertyNames;var U=Object.getPrototypeOf,D=Object.prototype.hasOwnProperty;var k=(t,e)=>{for(var r in e)m(t,r,{get:e[r],enumerable:!0})},u=(t,e,r,a)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of T(e))!D.call(t,o)&&o!==r&&m(t,o,{get:()=>e[o],enumerable:!(a=b(e,o))||a.enumerable});return t};var C=(t,e,r)=>(r=t!=null?S(U(t)):{},u(e||!t||!t.__esModule?m(r,"default",{value:t,enumerable:!0}):r,t)),I=t=>u(m({},"__esModule",{value:!0}),t);var q={};k(q,{pdfToImg:()=>j,singlePdfToImg:()=>h});module.exports=I(q);var l={imgType:"png",pages:"all",scale:1,background:"rgb(255,255,255)",intent:"display",documentOptions:{},maxWidth:null,maxHeight:null,scaleForBrowserSupport:!1},y=(t,e)=>{let r=e!==void 0?t:1,a=e!==void 0?e:t;return Array.from({length:a-r+1},(o,n)=>r+n)};function A(t,e){return t==="firstPage"?[1]:t==="lastPage"?[e]:typeof t=="number"?[Math.max(1,t)]:Array.isArray(t)?t.length?t:[1]:typeof t=="object"?y(t.startPage??1,t.endPage??e):y(1,e)}function P(t){return t instanceof Int8Array||t instanceof Uint8Array||t instanceof Uint8ClampedArray||t instanceof Int16Array||t instanceof Uint16Array||t instanceof Int32Array||t instanceof Uint32Array||t instanceof Float32Array||t instanceof Float64Array}function j(t,e){let r=async a=>await h(a,e);return Array.isArray(t)?Promise.all(t.map(r)):r(t)}async function h(t,e={}){let r=await import("pdfjs-dist/legacy/build/pdf.mjs"),a=navigator.userAgent,o=a.includes("chrome")||a.includes("Chromium")||a.includes("Chrome");r.GlobalWorkerOptions.workerSrc="//cdnjs.cloudflare.com/ajax/libs/pdf.js/4.8.69/pdf.worker.min.mjs";let n={...l,...e},c=await r.getDocument({...P(t)?{data:t}:{url:t},isChrome:o,...n.documentOptions}).promise,f=c.numPages,d=A(n.pages,f),p=await Promise.all(d.map(s=>F(c,s,n)));return n.pages==="firstPage"||n.pages==="lastPage"||typeof n.pages=="number"?p[0]:p}async function F(t,e,r){let a=await t.getPage(e),o=r.scale,n=a.getViewport({scale:o});if(r.scaleForBrowserSupport||r.maxWidth||r.maxHeight){let{maxWidth:s,maxHeight:g}=r;s=s??4096,g=g??4096;let x=s/n.width,w=g/n.height,O=Math.min(x,w,1);o=o*O,n=a.getViewport({scale:o})}let i=document.createElement("canvas"),c=i.getContext("2d");i.height=n.height,i.width=n.width,await a.render({canvasContext:c,viewport:n,intent:r.intent||"display",background:r.background||"rgb(255,255,255)"}).promise;let d=r.imgType==="jpg"?"image/jpeg":"image/png";return i.toDataURL(d)}0&&(module.exports={pdfToImg,singlePdfToImg});