From 549aae6c3dbb1c351c28812f62aeff8d1a934a05 Mon Sep 17 00:00:00 2001 From: Calixte Denizet Date: Fri, 30 Apr 2021 16:43:27 +0200 Subject: [PATCH] JS -- add support for page property in field --- src/core/annotation.js | 49 ++++++++++++++++++++++++++--- src/core/catalog.js | 13 ++++++-- src/scripting_api/field.js | 10 +++++- test/integration/scripting_spec.js | 40 +++++++++++++++++++++++ test/pdfs/.gitignore | 1 + test/pdfs/evaljs.pdf | Bin 0 -> 55450 bytes 6 files changed, 104 insertions(+), 9 deletions(-) create mode 100644 test/pdfs/evaljs.pdf diff --git a/src/core/annotation.js b/src/core/annotation.js index be87b6c9b..38b43e4e5 100644 --- a/src/core/annotation.js +++ b/src/core/annotation.js @@ -71,22 +71,34 @@ class AnnotationFactory { * instance. */ static create(xref, ref, pdfManager, idFactory, collectFields) { - return pdfManager.ensureCatalog("acroForm").then(acroForm => { - return pdfManager.ensure(this, "_create", [ + return Promise.all([ + pdfManager.ensureCatalog("acroForm"), + collectFields ? this._getPageIndex(xref, ref, pdfManager) : -1, + ]).then(([acroForm, pageIndex]) => + pdfManager.ensure(this, "_create", [ xref, ref, pdfManager, idFactory, acroForm, collectFields, - ]); - }); + pageIndex, + ]) + ); } /** * @private */ - static _create(xref, ref, pdfManager, idFactory, acroForm, collectFields) { + static _create( + xref, + ref, + pdfManager, + idFactory, + acroForm, + collectFields, + pageIndex = -1 + ) { const dict = xref.fetchIfRef(ref); if (!isDict(dict)) { return undefined; @@ -108,6 +120,7 @@ class AnnotationFactory { pdfManager, acroForm: acroForm instanceof Dict ? acroForm : Dict.empty, collectFields, + pageIndex, }; switch (subtype) { @@ -196,6 +209,26 @@ class AnnotationFactory { return new Annotation(parameters); } } + + static async _getPageIndex(xref, ref, pdfManager) { + try { + const annotDict = await xref.fetchIfRefAsync(ref); + if (!isDict(annotDict)) { + return -1; + } + const pageRef = annotDict.getRaw("P"); + if (!isRef(pageRef)) { + return -1; + } + const pageIndex = await pdfManager.ensureCatalog("getPageIndex", [ + pageRef, + ]); + return pageIndex; + } catch (ex) { + warn(`_getPageIndex: "${ex}".`); + return -1; + } + } } function getRgbColor(color) { @@ -373,6 +406,7 @@ class Annotation { AnnotationActionEventType ); this.data.fieldName = this._constructFieldName(dict); + this.data.pageIndex = params.pageIndex; } this._fallbackFontDict = null; @@ -681,6 +715,7 @@ class Annotation { name: this.data.fieldName, type: "", kidIds: this.data.kidIds, + page: this.data.pageIndex, }; } return null; @@ -1775,6 +1810,7 @@ class TextWidgetAnnotation extends WidgetAnnotation { name: this.data.fieldName, rect: this.data.rect, actions: this.data.actions, + page: this.data.pageIndex, type: "text", }; } @@ -2106,6 +2142,7 @@ class ButtonWidgetAnnotation extends WidgetAnnotation { rect: this.data.rect, hidden: this.data.hidden, actions: this.data.actions, + page: this.data.pageIndex, type, }; } @@ -2186,6 +2223,7 @@ class ChoiceWidgetAnnotation extends WidgetAnnotation { hidden: this.data.hidden, actions: this.data.actions, items: this.data.options, + page: this.data.pageIndex, type, }; } @@ -2205,6 +2243,7 @@ class SignatureWidgetAnnotation extends WidgetAnnotation { return { id: this.data.id, value: null, + page: this.data.pageIndex, type: "signature", }; } diff --git a/src/core/catalog.js b/src/core/catalog.js index b5b93232b..0b8d3b04f 100644 --- a/src/core/catalog.js +++ b/src/core/catalog.js @@ -70,6 +70,7 @@ class Catalog { this.builtInCMapCache = new Map(); this.globalImageCache = new GlobalImageCache(); this.pageKidsCountCache = new RefSetCache(); + this.pageIndexCache = new RefSetCache(); this.nonBlendModesSet = new RefSet(); } @@ -983,6 +984,7 @@ class Catalog { clearPrimitiveCaches(); this.globalImageCache.clear(/* onlyData = */ manuallyTriggered); this.pageKidsCountCache.clear(); + this.pageIndexCache.clear(); this.nonBlendModesSet.clear(); const promises = []; @@ -1112,6 +1114,11 @@ class Catalog { } getPageIndex(pageRef) { + const cachedPageIndex = this.pageIndexCache.get(pageRef); + if (cachedPageIndex !== undefined) { + return Promise.resolve(cachedPageIndex); + } + // The page tree nodes have the count of all the leaves below them. To get // how many pages are before we just have to walk up the tree and keep // adding the count of siblings to the left of the node. @@ -1191,16 +1198,16 @@ class Catalog { } let total = 0; - function next(ref) { - return pagesBeforeRef(ref).then(function (args) { + const next = ref => + pagesBeforeRef(ref).then(args => { if (!args) { + this.pageIndexCache.put(pageRef, total); return total; } const [count, parentRef] = args; total += count; return next(parentRef); }); - } return next(pageRef); } diff --git a/src/scripting_api/field.js b/src/scripting_api/field.js index 0ae9e4cbc..e7154dc8c 100644 --- a/src/scripting_api/field.js +++ b/src/scripting_api/field.js @@ -49,7 +49,6 @@ class Field extends PDFObject { this.multiline = data.multiline; this.multipleSelection = !!data.multipleSelection; this.name = data.name; - this.page = data.page; this.password = data.password; this.print = data.print; this.radiosInUnison = data.radiosInUnison; @@ -78,6 +77,7 @@ class Field extends PDFObject { this._fillColor = data.fillColor || ["T"]; this._isChoice = Array.isArray(data.items); this._items = data.items || []; + this._page = data.page || 0; this._strokeColor = data.strokeColor || ["G", 0]; this._textColor = data.textColor || ["G", 0]; this._value = data.value || ""; @@ -180,6 +180,14 @@ class Field extends PDFObject { this.strokeColor = color; } + get page() { + return this._page; + } + + set page(_) { + throw new Error("field.page is read-only"); + } + get textColor() { return this._textColor; } diff --git a/test/integration/scripting_spec.js b/test/integration/scripting_spec.js index 7f115e39e..be45fee7f 100644 --- a/test/integration/scripting_spec.js +++ b/test/integration/scripting_spec.js @@ -762,4 +762,44 @@ describe("Interaction", () => { ); }); }); + + describe("Check field properties", () => { + let pages; + + beforeAll(async () => { + pages = await loadAndWait("evaljs.pdf", "#\\35 5R"); + }); + + afterAll(async () => { + await closePages(pages); + }); + + it("must check page index", async () => { + await Promise.all( + pages.map(async ([browserName, page]) => { + await page.waitForFunction( + "window.PDFViewerApplication.scriptingReady === true" + ); + + await clearInput(page, "#\\35 5R"); + await page.type( + "#\\35 5R", + ` + ['Text1', 'Text2', 'Text4', + 'List Box7', 'Group6'].map(x => this.getField(x).page).join(',') + ` + ); + + // Click on execute button to eval the above code. + await page.click("[data-annotation-id='57R']"); + await page.waitForFunction( + `document.querySelector("#\\\\35 6R").value !== ""` + ); + + const text = await page.$eval("#\\35 6R", el => el.value); + expect(text).withContext(`In ${browserName}`).toEqual("0,0,1,1,1"); + }) + ); + }); + }); }); diff --git a/test/pdfs/.gitignore b/test/pdfs/.gitignore index 6915b4600..43d39f2d3 100644 --- a/test/pdfs/.gitignore +++ b/test/pdfs/.gitignore @@ -403,6 +403,7 @@ !issue12418_reduced.pdf !annotation-freetext.pdf !annotation-line.pdf +!evaljs.pdf !annotation-line-without-appearance.pdf !bug1669099.pdf !annotation-square-circle.pdf diff --git a/test/pdfs/evaljs.pdf b/test/pdfs/evaljs.pdf new file mode 100644 index 0000000000000000000000000000000000000000..31461dd314f01bdca51f14fd3bb78021a0c2b7e0 GIT binary patch literal 55450 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 literal 0 HcmV?d00001