Import project sources
This commit is contained in:
@@ -0,0 +1,9 @@
|
||||
import {cp,mkdir} from 'node:fs/promises';
|
||||
import {createRequire} from 'node:module';
|
||||
import path from 'node:path';
|
||||
const require=createRequire(import.meta.url);
|
||||
const base=path.dirname(require.resolve('pdfjs-dist/package.json'));
|
||||
const dest=new URL('../public/pdfjs/',import.meta.url);
|
||||
await mkdir(dest,{recursive:true});
|
||||
await cp(path.join(base,'build/pdf.worker.min.mjs'),new URL('pdf.worker.min.mjs',dest));
|
||||
for(const part of ['cmaps','standard_fonts','wasm'])await cp(path.join(base,part),new URL(part,dest),{recursive:true});
|
||||
@@ -0,0 +1,8 @@
|
||||
import {getDocument} from 'pdfjs-dist/legacy/build/pdf.mjs';
|
||||
import {readFile,writeFile} from 'node:fs/promises';
|
||||
const loadingTask=getDocument({data:new Uint8Array(await readFile(process.argv[2])),useSystemFonts:true});
|
||||
const pdf=await loadingTask.promise;
|
||||
const pages=[];
|
||||
for(let i=1;i<=pdf.numPages;i++){const page=await pdf.getPage(i);const text=await page.getTextContent();pages.push({page:i,text:text.items.map(x=>x.str+(x.hasEOL?'\n':' ')).join('')});}
|
||||
await writeFile(process.argv[3],JSON.stringify(pages,null,2));
|
||||
console.log(JSON.stringify({pages:pdf.numPages,metadata:await pdf.getMetadata(),firstPages:pages.slice(0,15)},null,2));await loadingTask.destroy();
|
||||
Reference in New Issue
Block a user