Skip to content

pdfObject is not a function #2

Description

@lukas-mertens

Hi! Thank you for developing pdfassembler, it's exactly what I need.
I've got a problem with your minimal working example from the Readme.md. I use Browserify and Babel to support all browsers and to use

varPDFAssembler=require('pdfassembler').PDFAssembler;

on the client side.

This is my code:

awaitPromise.all(pdfFiles.map(async(f)=>{consthelloWorldPdf={'/Root': {'/Type': '/Catalog','/Pages': {'/Type': '/Pages','/Count': 1,'/Kids': [{'/Type': '/Page','/MediaBox': [0,0,612,792],'/Contents': [{'stream': '1 0 0 1 72 708 cm BT /Helv 12 Tf (Hello world!) Tj ET'}],'/Resources': {'/Font': {'/Helv': {'/Type': '/Font','/BaseFont': '/Helvetica','/Subtype': '/Type1'}}},}],}}}constpdfAssemblerObj=newPDFAssembler(helloWorldPdf);pdfAssemblerObj.pdfObject().then(function(pdf){pdf['/Root']['/Pages']['/Kids']=pdf['/Root']['/Pages']['/Kids'].slice(0,1);});awaitpdfAssemblerObj.removeRootEntries();out_pdfs.push(awaitpdfAssemblerObj.assemblePdf(f.filename));}));

Whenever I try to execute it, it throws the error

Unhandled promise rejection
TypeError: pdfAssemblerObj.pdfObject is not a function

in firefox (just the beginning of the error) and

Uncaught (in promise) TypeError: pdfAssemblerObj.pdfObject is not a function
at _callee16$ (bundle.js:55304)
at tryCatch (polyfill.min.js:4)
at Generator.invoke [as _invoke] (polyfill.min.js:4)
at Generator.t.(:3000/anonymous function) [as next] (https://cdnjs.cloudflare.com/ajax/libs/babel-polyfill/6.26.0/polyfill.min.js:4:1671)
at step (bundle.js:55383)
at bundle.js:55383
at new Promise (<anonymous>)
at bundle.js:55383
at bundle.js:55335
at Array.map (<anonymous>)

in chrome. When I print out the pdfAssemblerObj using

constpdfAssemblerObj=newPDFAssembler(helloWorldPdf);console.log(pdfAssemblerObj);

it gives me the object

{
"pdfManager": null,
"userPassword": "",
"ownerPassword": "",
"nextNodeNum": 1,
"pdfTree": {
"/Root": {
"/Type": "/Catalog",
"/Pages": {
"/Type": "/Pages",
"/Count": 1,
"/Kids": [
{
"/Type": "/Page",
"/MediaBox": [
0,
0,
612,
792
],
"/Contents": [
{
"stream": "1 0 0 1 72 708 cm BT /Helv 12 Tf (Hello world!) Tj ET"
}
],
"/Resources": {
"/Font": {
"/Helv": {
"/Type": "/Font",
"/BaseFont": "/Helvetica",
"/Subtype": "/Type1"
}
}
}
}
]
}
}
},
"recoveryMode": false,
"objCache": {},
"objCacheQueue": {},
"pdfManagerArrays": [],
"pdfAssemblerArrays": [],
"promiseQueue": {
"options": {},
"pendingPromises": 0,
"maxPendingPromises": 1,
"maxQueuedPromises": null,
"queue": []
},
"indent": false,
"compress": true,
"encrypt": false,
"groupPages": true,
"pageGroupSize": 16,
"pdfVersion": "1.7"
}

Did you change anything about the API? Or what did I do wrong?

Edit: I don't use TypeScript. Could that be a problem?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions