@embedpdf/engines 1.0.13 → 1.0.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{engine-B0ZTENqz.js → engine-B11yoQGd.js} +378 -214
- package/dist/engine-B11yoQGd.js.map +1 -0
- package/dist/engine-v2kq6ghL.cjs +2 -0
- package/dist/engine-v2kq6ghL.cjs.map +1 -0
- package/dist/index.cjs +1 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +2 -5
- package/dist/index.js.map +1 -1
- package/dist/lib/pdfium/engine.d.ts +89 -31
- package/dist/lib/pdfium/index.cjs +1 -1
- package/dist/lib/pdfium/index.js +2 -2
- package/dist/lib/pdfium/web/direct-engine.cjs +1 -1
- package/dist/lib/pdfium/web/direct-engine.js +1 -1
- package/dist/lib/pdfium/web/worker-engine.cjs +1 -1
- package/dist/lib/pdfium/web/worker-engine.js +1 -1
- package/dist/lib/webworker/engine.cjs +1 -1
- package/dist/lib/webworker/engine.cjs.map +1 -1
- package/dist/lib/webworker/engine.d.ts +2 -3
- package/dist/lib/webworker/engine.js +122 -289
- package/dist/lib/webworker/engine.js.map +1 -1
- package/dist/lib/webworker/runner.d.ts +12 -0
- package/dist/preact/index.cjs +1 -1
- package/dist/preact/index.js +1 -1
- package/dist/react/index.cjs +1 -1
- package/dist/react/index.js +1 -1
- package/dist/{runner-B-s0R7NN.js → runner-D9_9TvyZ.js} +2 -5
- package/dist/runner-D9_9TvyZ.js.map +1 -0
- package/dist/runner-Dnb6tfxR.cjs +2 -0
- package/dist/runner-Dnb6tfxR.cjs.map +1 -0
- package/dist/vue/index.cjs +1 -1
- package/dist/vue/index.js +1 -1
- package/package.json +3 -3
- package/dist/engine-B0ZTENqz.js.map +0 -1
- package/dist/engine-BB5n-Wej.cjs +0 -2
- package/dist/engine-BB5n-Wej.cjs.map +0 -1
- package/dist/runner-B-s0R7NN.js.map +0 -1
- package/dist/runner-BBBtCHic.cjs +0 -2
- package/dist/runner-BBBtCHic.cjs.map +0 -1
package/dist/index.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./engine-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./engine-v2kq6ghL.cjs"),r=require("./runner-Dnb6tfxR.cjs"),t=require("./lib/webworker/engine.cjs"),n=require("@embedpdf/models");exports.BitmapFormat=e.BitmapFormat,exports.PdfiumEngine=e.PdfiumEngine,exports.PdfiumErrorCode=e.PdfiumErrorCode,exports.RenderFlag=e.RenderFlag,exports.browserImageDataToBlobConverter=e.browserImageDataToBlobConverter,exports.readArrayBuffer=e.readArrayBuffer,exports.readString=e.readString,exports.EngineRunner=r.EngineRunner,exports.PdfiumEngineRunner=r.PdfiumEngineRunner,exports.WebWorkerEngine=t.WebWorkerEngine,exports.WorkerTask=t.WorkerTask,exports.createMockPdfDocument=function(e){const r=[];for(let t=0;t<10;t++)r.push({index:t,size:{width:100,height:200}});return{id:"id",pageCount:10,pages:r,...e}},exports.createMockPdfEngine=function(e){return{openDocumentUrl:jest.fn(((e,r)=>n.PdfTaskHelper.create())),openDocumentFromBuffer:jest.fn(((e,r)=>n.PdfTaskHelper.create())),openDocumentFromLoader:jest.fn(((e,r)=>n.PdfTaskHelper.create())),getMetadata:()=>n.PdfTaskHelper.resolve({title:"title",author:"author",subject:"subject",keywords:"keywords",producer:"producer",creator:"creator",creationDate:"creationDate",modificationDate:"modificationDate"}),getDocPermissions:e=>n.PdfTaskHelper.resolve(4294967295),getDocUserPermissions:e=>n.PdfTaskHelper.resolve(4294967295),getSignatures:e=>n.PdfTaskHelper.resolve([]),getBookmarks:e=>{const r=[];return r.push({title:"Page 1",target:{type:"destination",destination:{pageIndex:1,zoom:{mode:n.PdfZoomMode.FitPage},view:[]}}},{title:"Page 2",target:{type:"destination",destination:{pageIndex:2,zoom:{mode:n.PdfZoomMode.FitPage},view:[]}},children:[{title:"Page 3",target:{type:"destination",destination:{pageIndex:3,zoom:{mode:n.PdfZoomMode.FitPage},view:[]}}}]}),n.PdfTaskHelper.resolve({bookmarks:r})},renderPage:jest.fn(((e,r,t,o,a,s)=>{const i=o%2==0?r.size:n.swap(r.size),d=Math.ceil(i.width*t)*Math.ceil(i.height*t),f=new Uint8ClampedArray(4*d),l=r.index%255;for(let n=0;n<d;n++){for(let e=0;e<3;e++){f[4*n+e]=l}f[4*n+3]=255}const p=f.buffer,c=p instanceof ArrayBuffer?p:new Uint8Array(f).buffer,g=new Blob([c],{type:"application/octet-stream"});return n.PdfTaskHelper.resolve(g)})),renderPageRect:jest.fn(((e,r,t,o,a,s,i)=>{const d=o%2==0?r.size:n.swap(r.size),f=Math.ceil(d.width*t)*Math.ceil(d.height*t),l=new Uint8ClampedArray(4*f),p=r.index%255;for(let n=0;n<f;n++){for(let e=0;e<3;e++){l[4*n+e]=p}l[4*n+3]=255}const c=l.buffer,g=c instanceof ArrayBuffer?c:new Uint8Array(l).buffer,u=new Blob([g],{type:"application/octet-stream"});return n.PdfTaskHelper.resolve(u)})),renderThumbnail:jest.fn(((e,r)=>{const t=r.size.width/4*(r.size.height/4),o=new Uint8ClampedArray(4*t),a=r.index%255;for(let n=0;n<t;n++){for(let e=0;e<3;e++){o[4*n+e]=a}o[4*n+3]=255}const s=o.buffer,i=s instanceof ArrayBuffer?s:new Uint8Array(o).buffer,d=new Blob([i],{type:"image/png"});return n.PdfTaskHelper.resolve(d)})),renderAnnotation:jest.fn(((e,r,t,o,a,s,i,d)=>n.PdfTaskHelper.resolve(new Blob([],{type:"image/png"})))),getAllAnnotations:jest.fn((e=>n.PdfTaskHelper.resolve({}))),getPageAnnotations:jest.fn(((e,r)=>{const t={pageIndex:r.index,id:r.index+1,type:n.PdfAnnotationSubtype.LINK,target:{type:"action",action:{type:n.PdfActionType.URI,uri:"https://localhost"}},text:"localhost",rect:{origin:{x:0,y:0},size:{width:100,height:100}}},o=[];return o.push(t),n.PdfTaskHelper.resolve(o)})),createPageAnnotation:jest.fn((()=>n.PdfTaskHelper.resolve(1))),updatePageAnnotation:jest.fn((()=>n.PdfTaskHelper.resolve(!0))),removePageAnnotation:jest.fn((()=>n.PdfTaskHelper.resolve(!0))),getPageTextRects:jest.fn(((e,r,t,o)=>n.PdfTaskHelper.resolve([{content:"pdf text",font:{family:"sans-serif",size:12},rect:{origin:{x:0,y:0},size:{width:100,height:100}}}]))),closeDocument:e=>n.PdfTaskHelper.resolve(!0),saveAsCopy:e=>n.PdfTaskHelper.resolve(new ArrayBuffer(0)),flattenPage:(e,r,t)=>n.PdfTaskHelper.resolve(n.PdfPageFlattenResult.Success),extractPages:(e,r)=>n.PdfTaskHelper.resolve(new ArrayBuffer(0)),extractText:(e,r)=>n.PdfTaskHelper.resolve(""),getTextSlices:(e,r)=>n.PdfTaskHelper.resolve([]),getPageGlyphs:(e,r)=>n.PdfTaskHelper.resolve([]),getPageGeometry:(e,r)=>n.PdfTaskHelper.resolve({runs:[]}),merge:e=>n.PdfTaskHelper.resolve({id:"id",content:new ArrayBuffer(0)}),mergePages:e=>n.PdfTaskHelper.resolve({id:"id",content:new ArrayBuffer(0)}),searchAllPages:(e,r,t)=>{const o={pageIndex:0,charIndex:0,charCount:r.length,rects:[{origin:{x:0,y:0},size:{width:50,height:20}}],context:{before:"",match:"",after:"",truncatedLeft:!1,truncatedRight:!1}};return n.PdfTaskHelper.resolve({results:[o],total:1})},getAttachments:e=>n.PdfTaskHelper.resolve([]),readAttachmentContent:(e,r)=>n.PdfTaskHelper.resolve(new ArrayBuffer(0)),setFormFieldValue:(e,r,t,o)=>n.PdfTaskHelper.resolve(!0),...e}},exports.createMockPdfFile=function(e){return{id:"id",content:new ArrayBuffer(0)}};
|
|
2
2
|
//# sourceMappingURL=index.cjs.map
|
package/dist/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","sources":["../src/lib/mock/index.ts"],"sourcesContent":["import {\n PdfDocumentObject,\n PdfEngine,\n PdfPageObject,\n PdfAnnotationSubtype,\n PdfLinkAnnoObject,\n Rotation,\n swap,\n PdfZoomMode,\n PdfActionType,\n PdfAnnotationObject,\n PdfBookmarkObject,\n PdfTextRectObject,\n SearchTarget,\n SearchResult,\n PdfAttachmentObject,\n PdfSignatureObject,\n Rect,\n PdfRenderOptions,\n PdfFile,\n PdfAnnotationObjectStatus,\n PdfWidgetAnnoObject,\n FormFieldValue,\n PdfTaskHelper,\n PdfPageFlattenFlag,\n PdfPageFlattenResult,\n PdfFileLoader,\n SearchAllPagesResult,\n MatchFlag,\n Task,\n Logger,\n NoopLogger,\n PdfAnnotationTransformation,\n PdfEngineError,\n PdfMetadataObject,\n PdfErrorCode,\n PdfErrorReason,\n PdfBookmarksObject,\n PdfUrlOptions,\n PdfFileUrl,\n PdfGlyphObject,\n PdfPageGeometry,\n PageTextSlice,\n PdfAnnotationObjectBase,\n PdfAlphaColor,\n WebAlphaColor,\n AppearanceMode,\n ImageConversionTypes,\n} from '@embedpdf/models';\n\n/**\n * Create mock of pdf engine\n * @param partialEngine - partial configuration of engine\n * @returns - mock of pdf engine\n *\n * @public\n */\nexport function createMockPdfEngine(partialEngine?: Partial<PdfEngine>): PdfEngine {\n const engine: PdfEngine = {\n openDocumentUrl: jest.fn((file: PdfFileUrl, options?: PdfUrlOptions) => {\n return PdfTaskHelper.create();\n }),\n openDocumentFromBuffer: jest.fn((file: PdfFile, password: string) => {\n return PdfTaskHelper.create();\n }),\n openDocumentFromLoader: jest.fn((file: PdfFileLoader, password: string) => {\n return PdfTaskHelper.create();\n }),\n getMetadata: () => {\n return PdfTaskHelper.resolve({\n title: 'title',\n author: 'author',\n subject: 'subject',\n keywords: 'keywords',\n producer: 'producer',\n creator: 'creator',\n creationDate: 'creationDate',\n modificationDate: 'modificationDate',\n });\n },\n getDocPermissions: (doc: PdfDocumentObject) => {\n return PdfTaskHelper.resolve(0xffffffff);\n },\n getDocUserPermissions: (doc: PdfDocumentObject) => {\n return PdfTaskHelper.resolve(0xffffffff);\n },\n getSignatures: (doc: PdfDocumentObject) => {\n const signatures: PdfSignatureObject[] = [];\n return PdfTaskHelper.resolve(signatures);\n },\n updateAnnotationColor: (\n doc: PdfDocumentObject,\n page: PdfPageObject,\n annotation: PdfAnnotationObjectBase,\n color: WebAlphaColor,\n which: number = 0,\n ) => {\n return PdfTaskHelper.resolve(true);\n },\n getBookmarks: (doc: PdfDocumentObject) => {\n const bookmarks: PdfBookmarkObject[] = [];\n bookmarks.push(\n {\n title: 'Page 1',\n target: {\n type: 'destination',\n destination: {\n pageIndex: 1,\n zoom: {\n mode: PdfZoomMode.FitPage,\n },\n view: [],\n },\n },\n },\n {\n title: 'Page 2',\n target: {\n type: 'destination',\n destination: {\n pageIndex: 2,\n zoom: {\n mode: PdfZoomMode.FitPage,\n },\n view: [],\n },\n },\n children: [\n {\n title: 'Page 3',\n target: {\n type: 'destination',\n destination: {\n pageIndex: 3,\n zoom: {\n mode: PdfZoomMode.FitPage,\n },\n view: [],\n },\n },\n },\n ],\n },\n );\n return PdfTaskHelper.resolve({\n bookmarks,\n });\n },\n renderPage: jest.fn(\n (\n doc: PdfDocumentObject,\n page: PdfPageObject,\n scaleFactor: number,\n rotation: Rotation,\n dpr: number,\n options: PdfRenderOptions,\n ) => {\n const pageSize = rotation % 2 === 0 ? page.size : swap(page.size);\n const imageSize = {\n width: Math.ceil(pageSize.width * scaleFactor),\n height: Math.ceil(pageSize.height * scaleFactor),\n };\n const pixelCount = imageSize.width * imageSize.height;\n const array = new Uint8ClampedArray(pixelCount * 4);\n const rgbValue = page.index % 255;\n const alphaValue = 255;\n for (let i = 0; i < pixelCount; i++) {\n for (let j = 0; j < 3; j++) {\n const index = i * 4 + j;\n array[index] = rgbValue;\n }\n array[i * 4 + 3] = alphaValue;\n }\n\n const ab = array.buffer;\n const realBuffer = ab instanceof ArrayBuffer ? ab : new Uint8Array(array).buffer;\n const blob = new Blob([realBuffer], { type: 'application/octet-stream' });\n return PdfTaskHelper.resolve(blob);\n },\n ),\n renderPageRect: jest.fn(\n (\n doc: PdfDocumentObject,\n page: PdfPageObject,\n scaleFactor: number,\n rotation: Rotation,\n dpr: number,\n rect: Rect,\n options: PdfRenderOptions,\n ) => {\n const pageSize = rotation % 2 === 0 ? page.size : swap(page.size);\n const imageSize = {\n width: Math.ceil(pageSize.width * scaleFactor),\n height: Math.ceil(pageSize.height * scaleFactor),\n };\n const pixelCount = imageSize.width * imageSize.height;\n const array = new Uint8ClampedArray(pixelCount * 4);\n const rgbValue = page.index % 255;\n const alphaValue = 255;\n for (let i = 0; i < pixelCount; i++) {\n for (let j = 0; j < 3; j++) {\n const index = i * 4 + j;\n array[index] = rgbValue;\n }\n array[i * 4 + 3] = alphaValue;\n }\n\n const ab = array.buffer;\n const realBuffer = ab instanceof ArrayBuffer ? ab : new Uint8Array(array).buffer;\n const blob = new Blob([realBuffer], { type: 'application/octet-stream' });\n return PdfTaskHelper.resolve(blob);\n },\n ),\n renderThumbnail: jest.fn((doc: PdfDocumentObject, page: PdfPageObject) => {\n const thumbnailWidth = page.size.width / 4;\n const thumbnailHeight = page.size.height / 4;\n const pixelCount = thumbnailWidth * thumbnailHeight;\n const array = new Uint8ClampedArray(pixelCount * 4);\n const rgbValue = page.index % 255;\n const alphaValue = 255;\n for (let i = 0; i < pixelCount; i++) {\n for (let j = 0; j < 3; j++) {\n const index = i * 4 + j;\n array[index] = rgbValue;\n }\n array[i * 4 + 3] = alphaValue;\n }\n\n const ab = array.buffer;\n const realBuffer = ab instanceof ArrayBuffer ? ab : new Uint8Array(array).buffer;\n const blob = new Blob([realBuffer], { type: 'image/png' });\n\n return PdfTaskHelper.resolve(blob);\n }),\n renderAnnotation: jest.fn(\n (\n doc: PdfDocumentObject,\n page: PdfPageObject,\n annotation: PdfAnnotationObject,\n scaleFactor: number,\n rotation: Rotation,\n dpr: number,\n mode: AppearanceMode,\n imageType: ImageConversionTypes,\n ) => {\n return PdfTaskHelper.resolve(new Blob([], { type: 'image/png' }));\n },\n ),\n getAllAnnotations: jest.fn((doc: PdfDocumentObject) => {\n return PdfTaskHelper.resolve({});\n }),\n getPageAnnotations: jest.fn((doc: PdfDocumentObject, page: PdfPageObject) => {\n const link: PdfLinkAnnoObject = {\n pageIndex: page.index,\n id: page.index + 1,\n type: PdfAnnotationSubtype.LINK,\n target: {\n type: 'action',\n action: {\n type: PdfActionType.URI,\n uri: 'https://localhost',\n },\n },\n text: 'localhost',\n rect: {\n origin: {\n x: 0,\n y: 0,\n },\n size: {\n width: 100,\n height: 100,\n },\n },\n };\n const annotations: PdfAnnotationObject[] = [];\n annotations.push(link);\n return PdfTaskHelper.resolve(annotations);\n }),\n createPageAnnotation: jest.fn(() => {\n return PdfTaskHelper.resolve(1);\n }),\n updatePageAnnotation: jest.fn(() => {\n return PdfTaskHelper.resolve(true);\n }),\n removePageAnnotation: jest.fn(() => {\n return PdfTaskHelper.resolve(true);\n }),\n getPageTextRects: jest.fn(\n (doc: PdfDocumentObject, page: PdfPageObject, scaleFactor: number, rotation: Rotation) => {\n const textRects: PdfTextRectObject[] = [\n {\n content: 'pdf text',\n font: {\n family: 'sans-serif',\n size: 12,\n },\n rect: {\n origin: {\n x: 0,\n y: 0,\n },\n size: {\n width: 100,\n height: 100,\n },\n },\n },\n ];\n return PdfTaskHelper.resolve(textRects);\n },\n ),\n closeDocument: (pdf: PdfDocumentObject) => {\n return PdfTaskHelper.resolve(true);\n },\n saveAsCopy: (pdf: PdfDocumentObject) => {\n return PdfTaskHelper.resolve(new ArrayBuffer(0));\n },\n flattenPage: (pdf: PdfDocumentObject, page: PdfPageObject, flag: PdfPageFlattenFlag) => {\n return PdfTaskHelper.resolve<PdfPageFlattenResult>(PdfPageFlattenResult.Success);\n },\n extractPages: (pdf: PdfDocumentObject, pageIndexes: number[]) => {\n return PdfTaskHelper.resolve(new ArrayBuffer(0));\n },\n extractText: (pdf: PdfDocumentObject, pageIndexes: number[]) => {\n return PdfTaskHelper.resolve('');\n },\n getTextSlices: (doc: PdfDocumentObject, slices: PageTextSlice[]) => {\n return PdfTaskHelper.resolve([] as string[]);\n },\n getPageGlyphs: (doc: PdfDocumentObject, page: PdfPageObject) => {\n return PdfTaskHelper.resolve([] as PdfGlyphObject[]);\n },\n getPageGeometry: (doc: PdfDocumentObject, page: PdfPageObject) => {\n return PdfTaskHelper.resolve({\n runs: [],\n } as PdfPageGeometry);\n },\n merge: (files: PdfFile[]) => {\n return PdfTaskHelper.resolve({\n id: 'id',\n content: new ArrayBuffer(0),\n });\n },\n mergePages: (mergeConfigs: Array<{ docId: string; pageIndices: number[] }>) => {\n return PdfTaskHelper.resolve({\n id: 'id',\n content: new ArrayBuffer(0),\n });\n },\n searchAllPages: (doc: PdfDocumentObject, keyword: string, flags?: MatchFlag[]) => {\n // Create a mock search result\n const mockResult: SearchResult = {\n pageIndex: 0,\n charIndex: 0,\n charCount: keyword.length,\n rects: [\n {\n origin: {\n x: 0,\n y: 0,\n },\n size: {\n width: 50,\n height: 20,\n },\n },\n ],\n context: {\n before: '',\n match: '',\n after: '',\n truncatedLeft: false,\n truncatedRight: false,\n },\n };\n\n // Return a mock SearchAllPagesResult with a single result\n return PdfTaskHelper.resolve<SearchAllPagesResult>({\n results: [mockResult],\n total: 1,\n });\n },\n getAttachments: (doc: PdfDocumentObject) => {\n return PdfTaskHelper.resolve([] as PdfAttachmentObject[]);\n },\n readAttachmentContent: (doc: PdfDocumentObject, attachment: PdfAttachmentObject) => {\n return PdfTaskHelper.resolve(new ArrayBuffer(0));\n },\n setFormFieldValue: (\n doc: PdfDocumentObject,\n page: PdfPageObject,\n annotation: PdfWidgetAnnoObject,\n text: FormFieldValue,\n ) => {\n return PdfTaskHelper.resolve(true);\n },\n ...partialEngine,\n };\n\n return engine;\n}\n/**\n * Create mock of pdf document\n * @param doc - partial configuration of document\n * @returns mock of pdf document\n *\n * @public\n */\nexport function createMockPdfDocument(doc?: Partial<PdfDocumentObject>): PdfDocumentObject {\n const pageCount = 10;\n const pageWidth = 100;\n const pageHeight = 200;\n const pages = [];\n for (let i = 0; i < pageCount; i++) {\n pages.push({\n index: i,\n size: {\n width: pageWidth,\n height: pageHeight,\n },\n });\n }\n\n return {\n id: 'id',\n pageCount: pageCount,\n pages: pages,\n ...doc,\n };\n}\n\n/**\n * Create mock of pdf file\n * @param file - partial configuration of file\n * @returns mock of pdf file\n *\n * @public\n */\nexport function createMockPdfFile(file?: Partial<PdfFile>): PdfFile {\n return {\n id: 'id',\n content: new ArrayBuffer(0),\n };\n}\n"],"names":["doc","pages","i","push","index","size","width","height","id","pageCount","partialEngine","engine","openDocumentUrl","jest","fn","file","options","PdfTaskHelper","create","openDocumentFromBuffer","password","openDocumentFromLoader","getMetadata","resolve","title","author","subject","keywords","producer","creator","creationDate","modificationDate","getDocPermissions","getDocUserPermissions","getSignatures","updateAnnotationColor","page","annotation","color","which","getBookmarks","bookmarks","target","type","destination","pageIndex","zoom","mode","PdfZoomMode","FitPage","view","children","renderPage","scaleFactor","rotation","dpr","pageSize","swap","pixelCount","Math","ceil","array","Uint8ClampedArray","rgbValue","j","ab","buffer","realBuffer","ArrayBuffer","Uint8Array","blob","Blob","renderPageRect","rect","renderThumbnail","renderAnnotation","imageType","getAllAnnotations","getPageAnnotations","link","PdfAnnotationSubtype","LINK","action","PdfActionType","URI","uri","text","origin","x","y","annotations","createPageAnnotation","updatePageAnnotation","removePageAnnotation","getPageTextRects","content","font","family","closeDocument","pdf","saveAsCopy","flattenPage","flag","PdfPageFlattenResult","Success","extractPages","pageIndexes","extractText","getTextSlices","slices","getPageGlyphs","getPageGeometry","runs","merge","files","mergePages","mergeConfigs","searchAllPages","keyword","flags","mockResult","charIndex","charCount","length","rects","context","before","match","after","truncatedLeft","truncatedRight","results","total","getAttachments","readAttachmentContent","attachment","setFormFieldValue"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.cjs","sources":["../src/lib/mock/index.ts"],"sourcesContent":["import {\n PdfDocumentObject,\n PdfEngine,\n PdfPageObject,\n PdfAnnotationSubtype,\n PdfLinkAnnoObject,\n Rotation,\n swap,\n PdfZoomMode,\n PdfActionType,\n PdfAnnotationObject,\n PdfBookmarkObject,\n PdfTextRectObject,\n SearchTarget,\n SearchResult,\n PdfAttachmentObject,\n PdfSignatureObject,\n Rect,\n PdfRenderOptions,\n PdfFile,\n PdfAnnotationObjectStatus,\n PdfWidgetAnnoObject,\n FormFieldValue,\n PdfTaskHelper,\n PdfPageFlattenFlag,\n PdfPageFlattenResult,\n PdfFileLoader,\n SearchAllPagesResult,\n MatchFlag,\n Task,\n Logger,\n NoopLogger,\n PdfAnnotationTransformation,\n PdfEngineError,\n PdfMetadataObject,\n PdfErrorCode,\n PdfErrorReason,\n PdfBookmarksObject,\n PdfUrlOptions,\n PdfFileUrl,\n PdfGlyphObject,\n PdfPageGeometry,\n PageTextSlice,\n PdfAnnotationObjectBase,\n PdfAlphaColor,\n WebAlphaColor,\n AppearanceMode,\n ImageConversionTypes,\n} from '@embedpdf/models';\n\n/**\n * Create mock of pdf engine\n * @param partialEngine - partial configuration of engine\n * @returns - mock of pdf engine\n *\n * @public\n */\nexport function createMockPdfEngine(partialEngine?: Partial<PdfEngine>): PdfEngine {\n const engine: PdfEngine = {\n openDocumentUrl: jest.fn((file: PdfFileUrl, options?: PdfUrlOptions) => {\n return PdfTaskHelper.create();\n }),\n openDocumentFromBuffer: jest.fn((file: PdfFile, password: string) => {\n return PdfTaskHelper.create();\n }),\n openDocumentFromLoader: jest.fn((file: PdfFileLoader, password: string) => {\n return PdfTaskHelper.create();\n }),\n getMetadata: () => {\n return PdfTaskHelper.resolve({\n title: 'title',\n author: 'author',\n subject: 'subject',\n keywords: 'keywords',\n producer: 'producer',\n creator: 'creator',\n creationDate: 'creationDate',\n modificationDate: 'modificationDate',\n });\n },\n getDocPermissions: (doc: PdfDocumentObject) => {\n return PdfTaskHelper.resolve(0xffffffff);\n },\n getDocUserPermissions: (doc: PdfDocumentObject) => {\n return PdfTaskHelper.resolve(0xffffffff);\n },\n getSignatures: (doc: PdfDocumentObject) => {\n const signatures: PdfSignatureObject[] = [];\n return PdfTaskHelper.resolve(signatures);\n },\n getBookmarks: (doc: PdfDocumentObject) => {\n const bookmarks: PdfBookmarkObject[] = [];\n bookmarks.push(\n {\n title: 'Page 1',\n target: {\n type: 'destination',\n destination: {\n pageIndex: 1,\n zoom: {\n mode: PdfZoomMode.FitPage,\n },\n view: [],\n },\n },\n },\n {\n title: 'Page 2',\n target: {\n type: 'destination',\n destination: {\n pageIndex: 2,\n zoom: {\n mode: PdfZoomMode.FitPage,\n },\n view: [],\n },\n },\n children: [\n {\n title: 'Page 3',\n target: {\n type: 'destination',\n destination: {\n pageIndex: 3,\n zoom: {\n mode: PdfZoomMode.FitPage,\n },\n view: [],\n },\n },\n },\n ],\n },\n );\n return PdfTaskHelper.resolve({\n bookmarks,\n });\n },\n renderPage: jest.fn(\n (\n doc: PdfDocumentObject,\n page: PdfPageObject,\n scaleFactor: number,\n rotation: Rotation,\n dpr: number,\n options: PdfRenderOptions,\n ) => {\n const pageSize = rotation % 2 === 0 ? page.size : swap(page.size);\n const imageSize = {\n width: Math.ceil(pageSize.width * scaleFactor),\n height: Math.ceil(pageSize.height * scaleFactor),\n };\n const pixelCount = imageSize.width * imageSize.height;\n const array = new Uint8ClampedArray(pixelCount * 4);\n const rgbValue = page.index % 255;\n const alphaValue = 255;\n for (let i = 0; i < pixelCount; i++) {\n for (let j = 0; j < 3; j++) {\n const index = i * 4 + j;\n array[index] = rgbValue;\n }\n array[i * 4 + 3] = alphaValue;\n }\n\n const ab = array.buffer;\n const realBuffer = ab instanceof ArrayBuffer ? ab : new Uint8Array(array).buffer;\n const blob = new Blob([realBuffer], { type: 'application/octet-stream' });\n return PdfTaskHelper.resolve(blob);\n },\n ),\n renderPageRect: jest.fn(\n (\n doc: PdfDocumentObject,\n page: PdfPageObject,\n scaleFactor: number,\n rotation: Rotation,\n dpr: number,\n rect: Rect,\n options: PdfRenderOptions,\n ) => {\n const pageSize = rotation % 2 === 0 ? page.size : swap(page.size);\n const imageSize = {\n width: Math.ceil(pageSize.width * scaleFactor),\n height: Math.ceil(pageSize.height * scaleFactor),\n };\n const pixelCount = imageSize.width * imageSize.height;\n const array = new Uint8ClampedArray(pixelCount * 4);\n const rgbValue = page.index % 255;\n const alphaValue = 255;\n for (let i = 0; i < pixelCount; i++) {\n for (let j = 0; j < 3; j++) {\n const index = i * 4 + j;\n array[index] = rgbValue;\n }\n array[i * 4 + 3] = alphaValue;\n }\n\n const ab = array.buffer;\n const realBuffer = ab instanceof ArrayBuffer ? ab : new Uint8Array(array).buffer;\n const blob = new Blob([realBuffer], { type: 'application/octet-stream' });\n return PdfTaskHelper.resolve(blob);\n },\n ),\n renderThumbnail: jest.fn((doc: PdfDocumentObject, page: PdfPageObject) => {\n const thumbnailWidth = page.size.width / 4;\n const thumbnailHeight = page.size.height / 4;\n const pixelCount = thumbnailWidth * thumbnailHeight;\n const array = new Uint8ClampedArray(pixelCount * 4);\n const rgbValue = page.index % 255;\n const alphaValue = 255;\n for (let i = 0; i < pixelCount; i++) {\n for (let j = 0; j < 3; j++) {\n const index = i * 4 + j;\n array[index] = rgbValue;\n }\n array[i * 4 + 3] = alphaValue;\n }\n\n const ab = array.buffer;\n const realBuffer = ab instanceof ArrayBuffer ? ab : new Uint8Array(array).buffer;\n const blob = new Blob([realBuffer], { type: 'image/png' });\n\n return PdfTaskHelper.resolve(blob);\n }),\n renderAnnotation: jest.fn(\n (\n doc: PdfDocumentObject,\n page: PdfPageObject,\n annotation: PdfAnnotationObject,\n scaleFactor: number,\n rotation: Rotation,\n dpr: number,\n mode: AppearanceMode,\n imageType: ImageConversionTypes,\n ) => {\n return PdfTaskHelper.resolve(new Blob([], { type: 'image/png' }));\n },\n ),\n getAllAnnotations: jest.fn((doc: PdfDocumentObject) => {\n return PdfTaskHelper.resolve({});\n }),\n getPageAnnotations: jest.fn((doc: PdfDocumentObject, page: PdfPageObject) => {\n const link: PdfLinkAnnoObject = {\n pageIndex: page.index,\n id: page.index + 1,\n type: PdfAnnotationSubtype.LINK,\n target: {\n type: 'action',\n action: {\n type: PdfActionType.URI,\n uri: 'https://localhost',\n },\n },\n text: 'localhost',\n rect: {\n origin: {\n x: 0,\n y: 0,\n },\n size: {\n width: 100,\n height: 100,\n },\n },\n };\n const annotations: PdfAnnotationObject[] = [];\n annotations.push(link);\n return PdfTaskHelper.resolve(annotations);\n }),\n createPageAnnotation: jest.fn(() => {\n return PdfTaskHelper.resolve(1);\n }),\n updatePageAnnotation: jest.fn(() => {\n return PdfTaskHelper.resolve(true);\n }),\n removePageAnnotation: jest.fn(() => {\n return PdfTaskHelper.resolve(true);\n }),\n getPageTextRects: jest.fn(\n (doc: PdfDocumentObject, page: PdfPageObject, scaleFactor: number, rotation: Rotation) => {\n const textRects: PdfTextRectObject[] = [\n {\n content: 'pdf text',\n font: {\n family: 'sans-serif',\n size: 12,\n },\n rect: {\n origin: {\n x: 0,\n y: 0,\n },\n size: {\n width: 100,\n height: 100,\n },\n },\n },\n ];\n return PdfTaskHelper.resolve(textRects);\n },\n ),\n closeDocument: (pdf: PdfDocumentObject) => {\n return PdfTaskHelper.resolve(true);\n },\n saveAsCopy: (pdf: PdfDocumentObject) => {\n return PdfTaskHelper.resolve(new ArrayBuffer(0));\n },\n flattenPage: (pdf: PdfDocumentObject, page: PdfPageObject, flag: PdfPageFlattenFlag) => {\n return PdfTaskHelper.resolve<PdfPageFlattenResult>(PdfPageFlattenResult.Success);\n },\n extractPages: (pdf: PdfDocumentObject, pageIndexes: number[]) => {\n return PdfTaskHelper.resolve(new ArrayBuffer(0));\n },\n extractText: (pdf: PdfDocumentObject, pageIndexes: number[]) => {\n return PdfTaskHelper.resolve('');\n },\n getTextSlices: (doc: PdfDocumentObject, slices: PageTextSlice[]) => {\n return PdfTaskHelper.resolve([] as string[]);\n },\n getPageGlyphs: (doc: PdfDocumentObject, page: PdfPageObject) => {\n return PdfTaskHelper.resolve([] as PdfGlyphObject[]);\n },\n getPageGeometry: (doc: PdfDocumentObject, page: PdfPageObject) => {\n return PdfTaskHelper.resolve({\n runs: [],\n } as PdfPageGeometry);\n },\n merge: (files: PdfFile[]) => {\n return PdfTaskHelper.resolve({\n id: 'id',\n content: new ArrayBuffer(0),\n });\n },\n mergePages: (mergeConfigs: Array<{ docId: string; pageIndices: number[] }>) => {\n return PdfTaskHelper.resolve({\n id: 'id',\n content: new ArrayBuffer(0),\n });\n },\n searchAllPages: (doc: PdfDocumentObject, keyword: string, flags?: MatchFlag[]) => {\n // Create a mock search result\n const mockResult: SearchResult = {\n pageIndex: 0,\n charIndex: 0,\n charCount: keyword.length,\n rects: [\n {\n origin: {\n x: 0,\n y: 0,\n },\n size: {\n width: 50,\n height: 20,\n },\n },\n ],\n context: {\n before: '',\n match: '',\n after: '',\n truncatedLeft: false,\n truncatedRight: false,\n },\n };\n\n // Return a mock SearchAllPagesResult with a single result\n return PdfTaskHelper.resolve<SearchAllPagesResult>({\n results: [mockResult],\n total: 1,\n });\n },\n getAttachments: (doc: PdfDocumentObject) => {\n return PdfTaskHelper.resolve([] as PdfAttachmentObject[]);\n },\n readAttachmentContent: (doc: PdfDocumentObject, attachment: PdfAttachmentObject) => {\n return PdfTaskHelper.resolve(new ArrayBuffer(0));\n },\n setFormFieldValue: (\n doc: PdfDocumentObject,\n page: PdfPageObject,\n annotation: PdfWidgetAnnoObject,\n text: FormFieldValue,\n ) => {\n return PdfTaskHelper.resolve(true);\n },\n ...partialEngine,\n };\n\n return engine;\n}\n/**\n * Create mock of pdf document\n * @param doc - partial configuration of document\n * @returns mock of pdf document\n *\n * @public\n */\nexport function createMockPdfDocument(doc?: Partial<PdfDocumentObject>): PdfDocumentObject {\n const pageCount = 10;\n const pageWidth = 100;\n const pageHeight = 200;\n const pages = [];\n for (let i = 0; i < pageCount; i++) {\n pages.push({\n index: i,\n size: {\n width: pageWidth,\n height: pageHeight,\n },\n });\n }\n\n return {\n id: 'id',\n pageCount: pageCount,\n pages: pages,\n ...doc,\n };\n}\n\n/**\n * Create mock of pdf file\n * @param file - partial configuration of file\n * @returns mock of pdf file\n *\n * @public\n */\nexport function createMockPdfFile(file?: Partial<PdfFile>): PdfFile {\n return {\n id: 'id',\n content: new ArrayBuffer(0),\n };\n}\n"],"names":["doc","pages","i","push","index","size","width","height","id","pageCount","partialEngine","engine","openDocumentUrl","jest","fn","file","options","PdfTaskHelper","create","openDocumentFromBuffer","password","openDocumentFromLoader","getMetadata","resolve","title","author","subject","keywords","producer","creator","creationDate","modificationDate","getDocPermissions","getDocUserPermissions","getSignatures","getBookmarks","bookmarks","target","type","destination","pageIndex","zoom","mode","PdfZoomMode","FitPage","view","children","renderPage","page","scaleFactor","rotation","dpr","pageSize","swap","pixelCount","Math","ceil","array","Uint8ClampedArray","rgbValue","j","ab","buffer","realBuffer","ArrayBuffer","Uint8Array","blob","Blob","renderPageRect","rect","renderThumbnail","renderAnnotation","annotation","imageType","getAllAnnotations","getPageAnnotations","link","PdfAnnotationSubtype","LINK","action","PdfActionType","URI","uri","text","origin","x","y","annotations","createPageAnnotation","updatePageAnnotation","removePageAnnotation","getPageTextRects","content","font","family","closeDocument","pdf","saveAsCopy","flattenPage","flag","PdfPageFlattenResult","Success","extractPages","pageIndexes","extractText","getTextSlices","slices","getPageGlyphs","getPageGeometry","runs","merge","files","mergePages","mergeConfigs","searchAllPages","keyword","flags","mockResult","charIndex","charCount","length","rects","context","before","match","after","truncatedLeft","truncatedRight","results","total","getAttachments","readAttachmentContent","attachment","setFormFieldValue"],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { B, a, P, R, b, c, r } from "./engine-
|
|
2
|
-
import { E, P as P2 } from "./runner-
|
|
1
|
+
import { B, a, P, R, b, c, r } from "./engine-B11yoQGd.js";
|
|
2
|
+
import { E, P as P2 } from "./runner-D9_9TvyZ.js";
|
|
3
3
|
import { WebWorkerEngine, WorkerTask } from "./lib/webworker/engine.js";
|
|
4
4
|
import { PdfTaskHelper, PdfActionType, PdfAnnotationSubtype, swap, PdfPageFlattenResult, PdfZoomMode } from "@embedpdf/models";
|
|
5
5
|
function createMockPdfEngine(partialEngine) {
|
|
@@ -35,9 +35,6 @@ function createMockPdfEngine(partialEngine) {
|
|
|
35
35
|
const signatures = [];
|
|
36
36
|
return PdfTaskHelper.resolve(signatures);
|
|
37
37
|
},
|
|
38
|
-
updateAnnotationColor: (doc, page, annotation, color, which = 0) => {
|
|
39
|
-
return PdfTaskHelper.resolve(true);
|
|
40
|
-
},
|
|
41
38
|
getBookmarks: (doc) => {
|
|
42
39
|
const bookmarks = [];
|
|
43
40
|
bookmarks.push(
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/lib/mock/index.ts"],"sourcesContent":["import {\n PdfDocumentObject,\n PdfEngine,\n PdfPageObject,\n PdfAnnotationSubtype,\n PdfLinkAnnoObject,\n Rotation,\n swap,\n PdfZoomMode,\n PdfActionType,\n PdfAnnotationObject,\n PdfBookmarkObject,\n PdfTextRectObject,\n SearchTarget,\n SearchResult,\n PdfAttachmentObject,\n PdfSignatureObject,\n Rect,\n PdfRenderOptions,\n PdfFile,\n PdfAnnotationObjectStatus,\n PdfWidgetAnnoObject,\n FormFieldValue,\n PdfTaskHelper,\n PdfPageFlattenFlag,\n PdfPageFlattenResult,\n PdfFileLoader,\n SearchAllPagesResult,\n MatchFlag,\n Task,\n Logger,\n NoopLogger,\n PdfAnnotationTransformation,\n PdfEngineError,\n PdfMetadataObject,\n PdfErrorCode,\n PdfErrorReason,\n PdfBookmarksObject,\n PdfUrlOptions,\n PdfFileUrl,\n PdfGlyphObject,\n PdfPageGeometry,\n PageTextSlice,\n PdfAnnotationObjectBase,\n PdfAlphaColor,\n WebAlphaColor,\n AppearanceMode,\n ImageConversionTypes,\n} from '@embedpdf/models';\n\n/**\n * Create mock of pdf engine\n * @param partialEngine - partial configuration of engine\n * @returns - mock of pdf engine\n *\n * @public\n */\nexport function createMockPdfEngine(partialEngine?: Partial<PdfEngine>): PdfEngine {\n const engine: PdfEngine = {\n openDocumentUrl: jest.fn((file: PdfFileUrl, options?: PdfUrlOptions) => {\n return PdfTaskHelper.create();\n }),\n openDocumentFromBuffer: jest.fn((file: PdfFile, password: string) => {\n return PdfTaskHelper.create();\n }),\n openDocumentFromLoader: jest.fn((file: PdfFileLoader, password: string) => {\n return PdfTaskHelper.create();\n }),\n getMetadata: () => {\n return PdfTaskHelper.resolve({\n title: 'title',\n author: 'author',\n subject: 'subject',\n keywords: 'keywords',\n producer: 'producer',\n creator: 'creator',\n creationDate: 'creationDate',\n modificationDate: 'modificationDate',\n });\n },\n getDocPermissions: (doc: PdfDocumentObject) => {\n return PdfTaskHelper.resolve(0xffffffff);\n },\n getDocUserPermissions: (doc: PdfDocumentObject) => {\n return PdfTaskHelper.resolve(0xffffffff);\n },\n getSignatures: (doc: PdfDocumentObject) => {\n const signatures: PdfSignatureObject[] = [];\n return PdfTaskHelper.resolve(signatures);\n },\n updateAnnotationColor: (\n doc: PdfDocumentObject,\n page: PdfPageObject,\n annotation: PdfAnnotationObjectBase,\n color: WebAlphaColor,\n which: number = 0,\n ) => {\n return PdfTaskHelper.resolve(true);\n },\n getBookmarks: (doc: PdfDocumentObject) => {\n const bookmarks: PdfBookmarkObject[] = [];\n bookmarks.push(\n {\n title: 'Page 1',\n target: {\n type: 'destination',\n destination: {\n pageIndex: 1,\n zoom: {\n mode: PdfZoomMode.FitPage,\n },\n view: [],\n },\n },\n },\n {\n title: 'Page 2',\n target: {\n type: 'destination',\n destination: {\n pageIndex: 2,\n zoom: {\n mode: PdfZoomMode.FitPage,\n },\n view: [],\n },\n },\n children: [\n {\n title: 'Page 3',\n target: {\n type: 'destination',\n destination: {\n pageIndex: 3,\n zoom: {\n mode: PdfZoomMode.FitPage,\n },\n view: [],\n },\n },\n },\n ],\n },\n );\n return PdfTaskHelper.resolve({\n bookmarks,\n });\n },\n renderPage: jest.fn(\n (\n doc: PdfDocumentObject,\n page: PdfPageObject,\n scaleFactor: number,\n rotation: Rotation,\n dpr: number,\n options: PdfRenderOptions,\n ) => {\n const pageSize = rotation % 2 === 0 ? page.size : swap(page.size);\n const imageSize = {\n width: Math.ceil(pageSize.width * scaleFactor),\n height: Math.ceil(pageSize.height * scaleFactor),\n };\n const pixelCount = imageSize.width * imageSize.height;\n const array = new Uint8ClampedArray(pixelCount * 4);\n const rgbValue = page.index % 255;\n const alphaValue = 255;\n for (let i = 0; i < pixelCount; i++) {\n for (let j = 0; j < 3; j++) {\n const index = i * 4 + j;\n array[index] = rgbValue;\n }\n array[i * 4 + 3] = alphaValue;\n }\n\n const ab = array.buffer;\n const realBuffer = ab instanceof ArrayBuffer ? ab : new Uint8Array(array).buffer;\n const blob = new Blob([realBuffer], { type: 'application/octet-stream' });\n return PdfTaskHelper.resolve(blob);\n },\n ),\n renderPageRect: jest.fn(\n (\n doc: PdfDocumentObject,\n page: PdfPageObject,\n scaleFactor: number,\n rotation: Rotation,\n dpr: number,\n rect: Rect,\n options: PdfRenderOptions,\n ) => {\n const pageSize = rotation % 2 === 0 ? page.size : swap(page.size);\n const imageSize = {\n width: Math.ceil(pageSize.width * scaleFactor),\n height: Math.ceil(pageSize.height * scaleFactor),\n };\n const pixelCount = imageSize.width * imageSize.height;\n const array = new Uint8ClampedArray(pixelCount * 4);\n const rgbValue = page.index % 255;\n const alphaValue = 255;\n for (let i = 0; i < pixelCount; i++) {\n for (let j = 0; j < 3; j++) {\n const index = i * 4 + j;\n array[index] = rgbValue;\n }\n array[i * 4 + 3] = alphaValue;\n }\n\n const ab = array.buffer;\n const realBuffer = ab instanceof ArrayBuffer ? ab : new Uint8Array(array).buffer;\n const blob = new Blob([realBuffer], { type: 'application/octet-stream' });\n return PdfTaskHelper.resolve(blob);\n },\n ),\n renderThumbnail: jest.fn((doc: PdfDocumentObject, page: PdfPageObject) => {\n const thumbnailWidth = page.size.width / 4;\n const thumbnailHeight = page.size.height / 4;\n const pixelCount = thumbnailWidth * thumbnailHeight;\n const array = new Uint8ClampedArray(pixelCount * 4);\n const rgbValue = page.index % 255;\n const alphaValue = 255;\n for (let i = 0; i < pixelCount; i++) {\n for (let j = 0; j < 3; j++) {\n const index = i * 4 + j;\n array[index] = rgbValue;\n }\n array[i * 4 + 3] = alphaValue;\n }\n\n const ab = array.buffer;\n const realBuffer = ab instanceof ArrayBuffer ? ab : new Uint8Array(array).buffer;\n const blob = new Blob([realBuffer], { type: 'image/png' });\n\n return PdfTaskHelper.resolve(blob);\n }),\n renderAnnotation: jest.fn(\n (\n doc: PdfDocumentObject,\n page: PdfPageObject,\n annotation: PdfAnnotationObject,\n scaleFactor: number,\n rotation: Rotation,\n dpr: number,\n mode: AppearanceMode,\n imageType: ImageConversionTypes,\n ) => {\n return PdfTaskHelper.resolve(new Blob([], { type: 'image/png' }));\n },\n ),\n getAllAnnotations: jest.fn((doc: PdfDocumentObject) => {\n return PdfTaskHelper.resolve({});\n }),\n getPageAnnotations: jest.fn((doc: PdfDocumentObject, page: PdfPageObject) => {\n const link: PdfLinkAnnoObject = {\n pageIndex: page.index,\n id: page.index + 1,\n type: PdfAnnotationSubtype.LINK,\n target: {\n type: 'action',\n action: {\n type: PdfActionType.URI,\n uri: 'https://localhost',\n },\n },\n text: 'localhost',\n rect: {\n origin: {\n x: 0,\n y: 0,\n },\n size: {\n width: 100,\n height: 100,\n },\n },\n };\n const annotations: PdfAnnotationObject[] = [];\n annotations.push(link);\n return PdfTaskHelper.resolve(annotations);\n }),\n createPageAnnotation: jest.fn(() => {\n return PdfTaskHelper.resolve(1);\n }),\n updatePageAnnotation: jest.fn(() => {\n return PdfTaskHelper.resolve(true);\n }),\n removePageAnnotation: jest.fn(() => {\n return PdfTaskHelper.resolve(true);\n }),\n getPageTextRects: jest.fn(\n (doc: PdfDocumentObject, page: PdfPageObject, scaleFactor: number, rotation: Rotation) => {\n const textRects: PdfTextRectObject[] = [\n {\n content: 'pdf text',\n font: {\n family: 'sans-serif',\n size: 12,\n },\n rect: {\n origin: {\n x: 0,\n y: 0,\n },\n size: {\n width: 100,\n height: 100,\n },\n },\n },\n ];\n return PdfTaskHelper.resolve(textRects);\n },\n ),\n closeDocument: (pdf: PdfDocumentObject) => {\n return PdfTaskHelper.resolve(true);\n },\n saveAsCopy: (pdf: PdfDocumentObject) => {\n return PdfTaskHelper.resolve(new ArrayBuffer(0));\n },\n flattenPage: (pdf: PdfDocumentObject, page: PdfPageObject, flag: PdfPageFlattenFlag) => {\n return PdfTaskHelper.resolve<PdfPageFlattenResult>(PdfPageFlattenResult.Success);\n },\n extractPages: (pdf: PdfDocumentObject, pageIndexes: number[]) => {\n return PdfTaskHelper.resolve(new ArrayBuffer(0));\n },\n extractText: (pdf: PdfDocumentObject, pageIndexes: number[]) => {\n return PdfTaskHelper.resolve('');\n },\n getTextSlices: (doc: PdfDocumentObject, slices: PageTextSlice[]) => {\n return PdfTaskHelper.resolve([] as string[]);\n },\n getPageGlyphs: (doc: PdfDocumentObject, page: PdfPageObject) => {\n return PdfTaskHelper.resolve([] as PdfGlyphObject[]);\n },\n getPageGeometry: (doc: PdfDocumentObject, page: PdfPageObject) => {\n return PdfTaskHelper.resolve({\n runs: [],\n } as PdfPageGeometry);\n },\n merge: (files: PdfFile[]) => {\n return PdfTaskHelper.resolve({\n id: 'id',\n content: new ArrayBuffer(0),\n });\n },\n mergePages: (mergeConfigs: Array<{ docId: string; pageIndices: number[] }>) => {\n return PdfTaskHelper.resolve({\n id: 'id',\n content: new ArrayBuffer(0),\n });\n },\n searchAllPages: (doc: PdfDocumentObject, keyword: string, flags?: MatchFlag[]) => {\n // Create a mock search result\n const mockResult: SearchResult = {\n pageIndex: 0,\n charIndex: 0,\n charCount: keyword.length,\n rects: [\n {\n origin: {\n x: 0,\n y: 0,\n },\n size: {\n width: 50,\n height: 20,\n },\n },\n ],\n context: {\n before: '',\n match: '',\n after: '',\n truncatedLeft: false,\n truncatedRight: false,\n },\n };\n\n // Return a mock SearchAllPagesResult with a single result\n return PdfTaskHelper.resolve<SearchAllPagesResult>({\n results: [mockResult],\n total: 1,\n });\n },\n getAttachments: (doc: PdfDocumentObject) => {\n return PdfTaskHelper.resolve([] as PdfAttachmentObject[]);\n },\n readAttachmentContent: (doc: PdfDocumentObject, attachment: PdfAttachmentObject) => {\n return PdfTaskHelper.resolve(new ArrayBuffer(0));\n },\n setFormFieldValue: (\n doc: PdfDocumentObject,\n page: PdfPageObject,\n annotation: PdfWidgetAnnoObject,\n text: FormFieldValue,\n ) => {\n return PdfTaskHelper.resolve(true);\n },\n ...partialEngine,\n };\n\n return engine;\n}\n/**\n * Create mock of pdf document\n * @param doc - partial configuration of document\n * @returns mock of pdf document\n *\n * @public\n */\nexport function createMockPdfDocument(doc?: Partial<PdfDocumentObject>): PdfDocumentObject {\n const pageCount = 10;\n const pageWidth = 100;\n const pageHeight = 200;\n const pages = [];\n for (let i = 0; i < pageCount; i++) {\n pages.push({\n index: i,\n size: {\n width: pageWidth,\n height: pageHeight,\n },\n });\n }\n\n return {\n id: 'id',\n pageCount: pageCount,\n pages: pages,\n ...doc,\n };\n}\n\n/**\n * Create mock of pdf file\n * @param file - partial configuration of file\n * @returns mock of pdf file\n *\n * @public\n */\nexport function createMockPdfFile(file?: Partial<PdfFile>): PdfFile {\n return {\n id: 'id',\n content: new ArrayBuffer(0),\n };\n}\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/lib/mock/index.ts"],"sourcesContent":["import {\n PdfDocumentObject,\n PdfEngine,\n PdfPageObject,\n PdfAnnotationSubtype,\n PdfLinkAnnoObject,\n Rotation,\n swap,\n PdfZoomMode,\n PdfActionType,\n PdfAnnotationObject,\n PdfBookmarkObject,\n PdfTextRectObject,\n SearchTarget,\n SearchResult,\n PdfAttachmentObject,\n PdfSignatureObject,\n Rect,\n PdfRenderOptions,\n PdfFile,\n PdfAnnotationObjectStatus,\n PdfWidgetAnnoObject,\n FormFieldValue,\n PdfTaskHelper,\n PdfPageFlattenFlag,\n PdfPageFlattenResult,\n PdfFileLoader,\n SearchAllPagesResult,\n MatchFlag,\n Task,\n Logger,\n NoopLogger,\n PdfAnnotationTransformation,\n PdfEngineError,\n PdfMetadataObject,\n PdfErrorCode,\n PdfErrorReason,\n PdfBookmarksObject,\n PdfUrlOptions,\n PdfFileUrl,\n PdfGlyphObject,\n PdfPageGeometry,\n PageTextSlice,\n PdfAnnotationObjectBase,\n PdfAlphaColor,\n WebAlphaColor,\n AppearanceMode,\n ImageConversionTypes,\n} from '@embedpdf/models';\n\n/**\n * Create mock of pdf engine\n * @param partialEngine - partial configuration of engine\n * @returns - mock of pdf engine\n *\n * @public\n */\nexport function createMockPdfEngine(partialEngine?: Partial<PdfEngine>): PdfEngine {\n const engine: PdfEngine = {\n openDocumentUrl: jest.fn((file: PdfFileUrl, options?: PdfUrlOptions) => {\n return PdfTaskHelper.create();\n }),\n openDocumentFromBuffer: jest.fn((file: PdfFile, password: string) => {\n return PdfTaskHelper.create();\n }),\n openDocumentFromLoader: jest.fn((file: PdfFileLoader, password: string) => {\n return PdfTaskHelper.create();\n }),\n getMetadata: () => {\n return PdfTaskHelper.resolve({\n title: 'title',\n author: 'author',\n subject: 'subject',\n keywords: 'keywords',\n producer: 'producer',\n creator: 'creator',\n creationDate: 'creationDate',\n modificationDate: 'modificationDate',\n });\n },\n getDocPermissions: (doc: PdfDocumentObject) => {\n return PdfTaskHelper.resolve(0xffffffff);\n },\n getDocUserPermissions: (doc: PdfDocumentObject) => {\n return PdfTaskHelper.resolve(0xffffffff);\n },\n getSignatures: (doc: PdfDocumentObject) => {\n const signatures: PdfSignatureObject[] = [];\n return PdfTaskHelper.resolve(signatures);\n },\n getBookmarks: (doc: PdfDocumentObject) => {\n const bookmarks: PdfBookmarkObject[] = [];\n bookmarks.push(\n {\n title: 'Page 1',\n target: {\n type: 'destination',\n destination: {\n pageIndex: 1,\n zoom: {\n mode: PdfZoomMode.FitPage,\n },\n view: [],\n },\n },\n },\n {\n title: 'Page 2',\n target: {\n type: 'destination',\n destination: {\n pageIndex: 2,\n zoom: {\n mode: PdfZoomMode.FitPage,\n },\n view: [],\n },\n },\n children: [\n {\n title: 'Page 3',\n target: {\n type: 'destination',\n destination: {\n pageIndex: 3,\n zoom: {\n mode: PdfZoomMode.FitPage,\n },\n view: [],\n },\n },\n },\n ],\n },\n );\n return PdfTaskHelper.resolve({\n bookmarks,\n });\n },\n renderPage: jest.fn(\n (\n doc: PdfDocumentObject,\n page: PdfPageObject,\n scaleFactor: number,\n rotation: Rotation,\n dpr: number,\n options: PdfRenderOptions,\n ) => {\n const pageSize = rotation % 2 === 0 ? page.size : swap(page.size);\n const imageSize = {\n width: Math.ceil(pageSize.width * scaleFactor),\n height: Math.ceil(pageSize.height * scaleFactor),\n };\n const pixelCount = imageSize.width * imageSize.height;\n const array = new Uint8ClampedArray(pixelCount * 4);\n const rgbValue = page.index % 255;\n const alphaValue = 255;\n for (let i = 0; i < pixelCount; i++) {\n for (let j = 0; j < 3; j++) {\n const index = i * 4 + j;\n array[index] = rgbValue;\n }\n array[i * 4 + 3] = alphaValue;\n }\n\n const ab = array.buffer;\n const realBuffer = ab instanceof ArrayBuffer ? ab : new Uint8Array(array).buffer;\n const blob = new Blob([realBuffer], { type: 'application/octet-stream' });\n return PdfTaskHelper.resolve(blob);\n },\n ),\n renderPageRect: jest.fn(\n (\n doc: PdfDocumentObject,\n page: PdfPageObject,\n scaleFactor: number,\n rotation: Rotation,\n dpr: number,\n rect: Rect,\n options: PdfRenderOptions,\n ) => {\n const pageSize = rotation % 2 === 0 ? page.size : swap(page.size);\n const imageSize = {\n width: Math.ceil(pageSize.width * scaleFactor),\n height: Math.ceil(pageSize.height * scaleFactor),\n };\n const pixelCount = imageSize.width * imageSize.height;\n const array = new Uint8ClampedArray(pixelCount * 4);\n const rgbValue = page.index % 255;\n const alphaValue = 255;\n for (let i = 0; i < pixelCount; i++) {\n for (let j = 0; j < 3; j++) {\n const index = i * 4 + j;\n array[index] = rgbValue;\n }\n array[i * 4 + 3] = alphaValue;\n }\n\n const ab = array.buffer;\n const realBuffer = ab instanceof ArrayBuffer ? ab : new Uint8Array(array).buffer;\n const blob = new Blob([realBuffer], { type: 'application/octet-stream' });\n return PdfTaskHelper.resolve(blob);\n },\n ),\n renderThumbnail: jest.fn((doc: PdfDocumentObject, page: PdfPageObject) => {\n const thumbnailWidth = page.size.width / 4;\n const thumbnailHeight = page.size.height / 4;\n const pixelCount = thumbnailWidth * thumbnailHeight;\n const array = new Uint8ClampedArray(pixelCount * 4);\n const rgbValue = page.index % 255;\n const alphaValue = 255;\n for (let i = 0; i < pixelCount; i++) {\n for (let j = 0; j < 3; j++) {\n const index = i * 4 + j;\n array[index] = rgbValue;\n }\n array[i * 4 + 3] = alphaValue;\n }\n\n const ab = array.buffer;\n const realBuffer = ab instanceof ArrayBuffer ? ab : new Uint8Array(array).buffer;\n const blob = new Blob([realBuffer], { type: 'image/png' });\n\n return PdfTaskHelper.resolve(blob);\n }),\n renderAnnotation: jest.fn(\n (\n doc: PdfDocumentObject,\n page: PdfPageObject,\n annotation: PdfAnnotationObject,\n scaleFactor: number,\n rotation: Rotation,\n dpr: number,\n mode: AppearanceMode,\n imageType: ImageConversionTypes,\n ) => {\n return PdfTaskHelper.resolve(new Blob([], { type: 'image/png' }));\n },\n ),\n getAllAnnotations: jest.fn((doc: PdfDocumentObject) => {\n return PdfTaskHelper.resolve({});\n }),\n getPageAnnotations: jest.fn((doc: PdfDocumentObject, page: PdfPageObject) => {\n const link: PdfLinkAnnoObject = {\n pageIndex: page.index,\n id: page.index + 1,\n type: PdfAnnotationSubtype.LINK,\n target: {\n type: 'action',\n action: {\n type: PdfActionType.URI,\n uri: 'https://localhost',\n },\n },\n text: 'localhost',\n rect: {\n origin: {\n x: 0,\n y: 0,\n },\n size: {\n width: 100,\n height: 100,\n },\n },\n };\n const annotations: PdfAnnotationObject[] = [];\n annotations.push(link);\n return PdfTaskHelper.resolve(annotations);\n }),\n createPageAnnotation: jest.fn(() => {\n return PdfTaskHelper.resolve(1);\n }),\n updatePageAnnotation: jest.fn(() => {\n return PdfTaskHelper.resolve(true);\n }),\n removePageAnnotation: jest.fn(() => {\n return PdfTaskHelper.resolve(true);\n }),\n getPageTextRects: jest.fn(\n (doc: PdfDocumentObject, page: PdfPageObject, scaleFactor: number, rotation: Rotation) => {\n const textRects: PdfTextRectObject[] = [\n {\n content: 'pdf text',\n font: {\n family: 'sans-serif',\n size: 12,\n },\n rect: {\n origin: {\n x: 0,\n y: 0,\n },\n size: {\n width: 100,\n height: 100,\n },\n },\n },\n ];\n return PdfTaskHelper.resolve(textRects);\n },\n ),\n closeDocument: (pdf: PdfDocumentObject) => {\n return PdfTaskHelper.resolve(true);\n },\n saveAsCopy: (pdf: PdfDocumentObject) => {\n return PdfTaskHelper.resolve(new ArrayBuffer(0));\n },\n flattenPage: (pdf: PdfDocumentObject, page: PdfPageObject, flag: PdfPageFlattenFlag) => {\n return PdfTaskHelper.resolve<PdfPageFlattenResult>(PdfPageFlattenResult.Success);\n },\n extractPages: (pdf: PdfDocumentObject, pageIndexes: number[]) => {\n return PdfTaskHelper.resolve(new ArrayBuffer(0));\n },\n extractText: (pdf: PdfDocumentObject, pageIndexes: number[]) => {\n return PdfTaskHelper.resolve('');\n },\n getTextSlices: (doc: PdfDocumentObject, slices: PageTextSlice[]) => {\n return PdfTaskHelper.resolve([] as string[]);\n },\n getPageGlyphs: (doc: PdfDocumentObject, page: PdfPageObject) => {\n return PdfTaskHelper.resolve([] as PdfGlyphObject[]);\n },\n getPageGeometry: (doc: PdfDocumentObject, page: PdfPageObject) => {\n return PdfTaskHelper.resolve({\n runs: [],\n } as PdfPageGeometry);\n },\n merge: (files: PdfFile[]) => {\n return PdfTaskHelper.resolve({\n id: 'id',\n content: new ArrayBuffer(0),\n });\n },\n mergePages: (mergeConfigs: Array<{ docId: string; pageIndices: number[] }>) => {\n return PdfTaskHelper.resolve({\n id: 'id',\n content: new ArrayBuffer(0),\n });\n },\n searchAllPages: (doc: PdfDocumentObject, keyword: string, flags?: MatchFlag[]) => {\n // Create a mock search result\n const mockResult: SearchResult = {\n pageIndex: 0,\n charIndex: 0,\n charCount: keyword.length,\n rects: [\n {\n origin: {\n x: 0,\n y: 0,\n },\n size: {\n width: 50,\n height: 20,\n },\n },\n ],\n context: {\n before: '',\n match: '',\n after: '',\n truncatedLeft: false,\n truncatedRight: false,\n },\n };\n\n // Return a mock SearchAllPagesResult with a single result\n return PdfTaskHelper.resolve<SearchAllPagesResult>({\n results: [mockResult],\n total: 1,\n });\n },\n getAttachments: (doc: PdfDocumentObject) => {\n return PdfTaskHelper.resolve([] as PdfAttachmentObject[]);\n },\n readAttachmentContent: (doc: PdfDocumentObject, attachment: PdfAttachmentObject) => {\n return PdfTaskHelper.resolve(new ArrayBuffer(0));\n },\n setFormFieldValue: (\n doc: PdfDocumentObject,\n page: PdfPageObject,\n annotation: PdfWidgetAnnoObject,\n text: FormFieldValue,\n ) => {\n return PdfTaskHelper.resolve(true);\n },\n ...partialEngine,\n };\n\n return engine;\n}\n/**\n * Create mock of pdf document\n * @param doc - partial configuration of document\n * @returns mock of pdf document\n *\n * @public\n */\nexport function createMockPdfDocument(doc?: Partial<PdfDocumentObject>): PdfDocumentObject {\n const pageCount = 10;\n const pageWidth = 100;\n const pageHeight = 200;\n const pages = [];\n for (let i = 0; i < pageCount; i++) {\n pages.push({\n index: i,\n size: {\n width: pageWidth,\n height: pageHeight,\n },\n });\n }\n\n return {\n id: 'id',\n pageCount: pageCount,\n pages: pages,\n ...doc,\n };\n}\n\n/**\n * Create mock of pdf file\n * @param file - partial configuration of file\n * @returns mock of pdf file\n *\n * @public\n */\nexport function createMockPdfFile(file?: Partial<PdfFile>): PdfFile {\n return {\n id: 'id',\n content: new ArrayBuffer(0),\n };\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { PdfAnnotationObject, PdfTextRectObject, PdfWidgetAnnoObject, Logger, SearchTarget, MatchFlag, PdfBookmarkObject, PdfDocumentObject, PdfEngine, PdfPageObject, Rotation, Rect, PdfAttachmentObject, PdfSignatureObject, PdfRenderOptions, PdfInkAnnoObject, Position, PdfCircleAnnoObject, PdfSquareAnnoObject, PdfSquigglyAnnoObject, PdfStrikeOutAnnoObject, PdfUnderlineAnnoObject, PdfFile, AppearanceMode, PdfHighlightAnnoObject,
|
|
1
|
+
import { PdfAnnotationObject, PdfTextRectObject, PdfWidgetAnnoObject, Logger, SearchTarget, MatchFlag, PdfBookmarkObject, PdfDocumentObject, PdfEngine, PdfPageObject, Rotation, Rect, PdfAttachmentObject, PdfSignatureObject, PdfRenderOptions, PdfInkAnnoObject, Position, PdfStampAnnoObject, PdfCircleAnnoObject, PdfSquareAnnoObject, PdfFreeTextAnnoObject, PdfSquigglyAnnoObject, PdfStrikeOutAnnoObject, PdfUnderlineAnnoObject, PdfFile, AppearanceMode, PdfHighlightAnnoObject, FormFieldValue, PdfPageFlattenFlag, PdfPageFlattenResult, PdfTask, PdfFileLoader, SearchAllPagesResult, PdfUrlOptions, PdfFileUrl, Task, PdfErrorReason, PdfGlyphObject, PdfPageGeometry, PdfImage, ImageConversionTypes, PageTextSlice, AnnotationCreateContext } from '@embedpdf/models';
|
|
2
2
|
import { WrappedPdfiumModule } from '@embedpdf/pdfium';
|
|
3
3
|
/**
|
|
4
4
|
* Format of bitmap
|
|
@@ -207,7 +207,7 @@ export declare class PdfiumEngine<T = Blob> implements PdfEngine<T> {
|
|
|
207
207
|
*
|
|
208
208
|
* @public
|
|
209
209
|
*/
|
|
210
|
-
createPageAnnotation(doc: PdfDocumentObject, page: PdfPageObject, annotation:
|
|
210
|
+
createPageAnnotation<A extends PdfAnnotationObject>(doc: PdfDocumentObject, page: PdfPageObject, annotation: A, context?: AnnotationCreateContext<A>): PdfTask<number>;
|
|
211
211
|
/**
|
|
212
212
|
* Update an existing page annotation in-place
|
|
213
213
|
*
|
|
@@ -322,6 +322,7 @@ export declare class PdfiumEngine<T = Blob> implements PdfEngine<T> {
|
|
|
322
322
|
* @public
|
|
323
323
|
*/
|
|
324
324
|
free(ptr: number): void;
|
|
325
|
+
addFreeTextContent(page: PdfPageObject, pagePtr: number, annotationPtr: number, annotation: PdfFreeTextAnnoObject): boolean;
|
|
325
326
|
/**
|
|
326
327
|
* Set the rect of specified annotation
|
|
327
328
|
* @param page - page info that the annotation is belonged to
|
|
@@ -388,7 +389,7 @@ export declare class PdfiumEngine<T = Blob> implements PdfEngine<T> {
|
|
|
388
389
|
*
|
|
389
390
|
* @private
|
|
390
391
|
*/
|
|
391
|
-
addStampContent(docPtr: number, page: PdfPageObject, pagePtr: number, annotationPtr: number,
|
|
392
|
+
addStampContent(docPtr: number, page: PdfPageObject, pagePtr: number, annotationPtr: number, annotation: PdfStampAnnoObject, imageData?: ImageData): boolean;
|
|
392
393
|
/**
|
|
393
394
|
* Add image object to annotation
|
|
394
395
|
* @param docPtr - pointer to pdf document object
|
|
@@ -532,21 +533,15 @@ export declare class PdfiumEngine<T = Blob> implements PdfEngine<T> {
|
|
|
532
533
|
*/
|
|
533
534
|
private readAnnotationColor;
|
|
534
535
|
/**
|
|
535
|
-
*
|
|
536
|
-
* Squiggly** markup annotations.
|
|
536
|
+
* Get the fill/stroke colour annotation.
|
|
537
537
|
*
|
|
538
|
-
*
|
|
539
|
-
*
|
|
540
|
-
*
|
|
541
|
-
* 3. Hard-coded fallback (Acrobat-style opaque yellow)
|
|
542
|
-
*
|
|
543
|
-
* @param annotationPtr - pointer to an `FPDF_ANNOTATION`
|
|
544
|
-
* @param fallback - colour to use when the PDF stores no tint at all
|
|
545
|
-
* @returns WebAlphaColor with hex color and opacity (0-1)
|
|
538
|
+
* @param annotationPtr - pointer to the annotation whose colour is being set
|
|
539
|
+
* @param colorType - which colour to get (0 = fill, 1 = stroke)
|
|
540
|
+
* @returns WebColor with hex color
|
|
546
541
|
*
|
|
547
542
|
* @private
|
|
548
543
|
*/
|
|
549
|
-
private
|
|
544
|
+
private getAnnotationColor;
|
|
550
545
|
/**
|
|
551
546
|
* Set the fill/stroke colour for a **Highlight / Underline / StrikeOut / Squiggly** markup annotation.
|
|
552
547
|
*
|
|
@@ -559,6 +554,78 @@ export declare class PdfiumEngine<T = Blob> implements PdfEngine<T> {
|
|
|
559
554
|
* @private
|
|
560
555
|
*/
|
|
561
556
|
private setAnnotationColor;
|
|
557
|
+
/**
|
|
558
|
+
* Get the opacity of the annotation.
|
|
559
|
+
*
|
|
560
|
+
* @param annotationPtr - pointer to the annotation whose opacity is being set
|
|
561
|
+
* @returns opacity (0-1)
|
|
562
|
+
*
|
|
563
|
+
* @private
|
|
564
|
+
*/
|
|
565
|
+
private getAnnotationOpacity;
|
|
566
|
+
/**
|
|
567
|
+
* Set the opacity of the annotation.
|
|
568
|
+
*
|
|
569
|
+
* @param annotationPtr - pointer to the annotation whose opacity is being set
|
|
570
|
+
* @param opacity - opacity (0-1)
|
|
571
|
+
* @returns true on success
|
|
572
|
+
*
|
|
573
|
+
* @private
|
|
574
|
+
*/
|
|
575
|
+
private setAnnotationOpacity;
|
|
576
|
+
/**
|
|
577
|
+
* Fetch the `/Q` text-alignment value from a **FreeText** annotation.
|
|
578
|
+
*
|
|
579
|
+
* @param annotationPtr pointer returned by `FPDFPage_GetAnnot`
|
|
580
|
+
* @returns `PdfTextAlignment`
|
|
581
|
+
*/
|
|
582
|
+
private getAnnotationTextAlignment;
|
|
583
|
+
/**
|
|
584
|
+
* Write the `/Q` text-alignment value into a **FreeText** annotation
|
|
585
|
+
* and clear the existing appearance stream so it can be regenerated.
|
|
586
|
+
*
|
|
587
|
+
* @param annotationPtr pointer returned by `FPDFPage_GetAnnot`
|
|
588
|
+
* @param alignment `PdfTextAlignment`
|
|
589
|
+
* @returns `true` on success
|
|
590
|
+
*/
|
|
591
|
+
private setAnnotationTextAlignment;
|
|
592
|
+
/**
|
|
593
|
+
* Fetch the `/EPDF:VerticalAlignment` vertical-alignment value from a **FreeText** annotation.
|
|
594
|
+
*
|
|
595
|
+
* @param annotationPtr pointer returned by `FPDFPage_GetAnnot`
|
|
596
|
+
* @returns `PdfVerticalAlignment`
|
|
597
|
+
*/
|
|
598
|
+
private getAnnotationVerticalAlignment;
|
|
599
|
+
/**
|
|
600
|
+
* Write the `/EPDF:VerticalAlignment` vertical-alignment value into a **FreeText** annotation
|
|
601
|
+
* and clear the existing appearance stream so it can be regenerated.
|
|
602
|
+
*
|
|
603
|
+
* @param annotationPtr pointer returned by `FPDFPage_GetAnnot`
|
|
604
|
+
* @param alignment `PdfVerticalAlignment`
|
|
605
|
+
* @returns `true` on success
|
|
606
|
+
*/
|
|
607
|
+
private setAnnotationVerticalAlignment;
|
|
608
|
+
/**
|
|
609
|
+
* Return the **default appearance** (font, size, colour) declared in the
|
|
610
|
+
* `/DA` string of a **FreeText** annotation.
|
|
611
|
+
*
|
|
612
|
+
* @param annotationPtr pointer to `FPDF_ANNOTATION`
|
|
613
|
+
* @returns `{ font, fontSize, color }` or `undefined` when PDFium returns false
|
|
614
|
+
*
|
|
615
|
+
* NOTE – `font` is the raw `FPDF_STANDARD_FONT` enum value that PDFium uses
|
|
616
|
+
* (same range as the C API: 0 = Courier, 12 = ZapfDingbats, …).
|
|
617
|
+
*/
|
|
618
|
+
private getAnnotationDefaultAppearance;
|
|
619
|
+
/**
|
|
620
|
+
* Write a **default appearance** (`/DA`) into a FreeText annotation.
|
|
621
|
+
*
|
|
622
|
+
* @param annotationPtr pointer to `FPDF_ANNOTATION`
|
|
623
|
+
* @param font `FPDF_STANDARD_FONT` enum value
|
|
624
|
+
* @param fontSize size in points (≥ 0)
|
|
625
|
+
* @param color CSS-style `#rrggbb` string (alpha ignored)
|
|
626
|
+
* @returns `true` on success
|
|
627
|
+
*/
|
|
628
|
+
private setAnnotationDefaultAppearance;
|
|
562
629
|
/**
|
|
563
630
|
* Border‐style + width helper
|
|
564
631
|
*
|
|
@@ -915,6 +982,14 @@ export declare class PdfiumEngine<T = Blob> implements PdfEngine<T> {
|
|
|
915
982
|
* @private
|
|
916
983
|
*/
|
|
917
984
|
private readPdfPageObjectTransformMatrix;
|
|
985
|
+
/**
|
|
986
|
+
* Read contents of a stamp annotation
|
|
987
|
+
* @param annotationPtr - pointer to pdf annotation
|
|
988
|
+
* @returns contents of the stamp annotation
|
|
989
|
+
*
|
|
990
|
+
* @private
|
|
991
|
+
*/
|
|
992
|
+
private readStampAnnotationContents;
|
|
918
993
|
/**
|
|
919
994
|
* Return the stroke-width declared in the annotation’s /Border or /BS entry.
|
|
920
995
|
* Falls back to 1 pt when nothing is defined.
|
|
@@ -1163,23 +1238,6 @@ export declare class PdfiumEngine<T = Blob> implements PdfEngine<T> {
|
|
|
1163
1238
|
* @private
|
|
1164
1239
|
*/
|
|
1165
1240
|
private readPageAnnoAppearanceStream;
|
|
1166
|
-
/**
|
|
1167
|
-
* Change the visible colour (and opacity) of an existing annotation.
|
|
1168
|
-
*
|
|
1169
|
-
* For markup annotations (highlight / underline / strikeout / squiggly) we
|
|
1170
|
-
* first clear the AP dictionary entry, otherwise the stored appearance stream
|
|
1171
|
-
* will override the new tint. For all other sub-types we keep the existing
|
|
1172
|
-
* AP so custom artwork isn't lost.
|
|
1173
|
-
*
|
|
1174
|
-
* @param doc logical document object
|
|
1175
|
-
* @param page logical page object
|
|
1176
|
-
* @param annotation the annotation we want to recolour
|
|
1177
|
-
* @param colour RGBA tuple (0-255 per channel)
|
|
1178
|
-
* @param which 0 = stroke/fill colour (PDFium's "colourType" param)
|
|
1179
|
-
*
|
|
1180
|
-
* @returns `true` when the operation succeeded
|
|
1181
|
-
*/
|
|
1182
|
-
updateAnnotationColor(doc: PdfDocumentObject, page: PdfPageObject, annotation: PdfAnnotationObjectBase, color: WebAlphaColor, which?: number): PdfTask<boolean>;
|
|
1183
1241
|
/**
|
|
1184
1242
|
* Set the rect of specified annotation
|
|
1185
1243
|
* @param page - page info that the annotation is belonged to
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("../../engine-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("../../engine-v2kq6ghL.cjs"),e=require("../../runner-Dnb6tfxR.cjs");exports.BitmapFormat=r.BitmapFormat,exports.PdfiumEngine=r.PdfiumEngine,exports.PdfiumErrorCode=r.PdfiumErrorCode,exports.RenderFlag=r.RenderFlag,exports.browserImageDataToBlobConverter=r.browserImageDataToBlobConverter,exports.readArrayBuffer=r.readArrayBuffer,exports.readString=r.readString,exports.PdfiumEngineRunner=e.PdfiumEngineRunner;
|
|
2
2
|
//# sourceMappingURL=index.cjs.map
|
package/dist/lib/pdfium/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { B, a, P, R, b, c, r } from "../../engine-
|
|
2
|
-
import { P as P2 } from "../../runner-
|
|
1
|
+
import { B, a, P, R, b, c, r } from "../../engine-B11yoQGd.js";
|
|
2
|
+
import { P as P2 } from "../../runner-D9_9TvyZ.js";
|
|
3
3
|
export {
|
|
4
4
|
B as BitmapFormat,
|
|
5
5
|
a as PdfiumEngine,
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("@embedpdf/pdfium"),i=require("../../../engine-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("@embedpdf/pdfium"),i=require("../../../engine-v2kq6ghL.cjs");exports.createPdfiumEngine=async function(t,n){const r=await fetch(t),a=await r.arrayBuffer(),u=await e.init({wasmBinary:a});return new i.PdfiumEngine(u,n)};
|
|
2
2
|
//# sourceMappingURL=direct-engine.cjs.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { init } from "@embedpdf/pdfium";
|
|
2
|
-
import { a as PdfiumEngine } from "../../../engine-
|
|
2
|
+
import { a as PdfiumEngine } from "../../../engine-B11yoQGd.js";
|
|
3
3
|
async function createPdfiumEngine(wasmUrl, logger) {
|
|
4
4
|
const response = await fetch(wasmUrl);
|
|
5
5
|
const wasmBinary = await response.arrayBuffer();
|