Merge pull request #16141 from Snuffleupagus/FilterFactory-docId
Include the document-id in the SVG-filter names (PR 16062 follow-up)
This commit is contained in:
commit
05f29c8720
@ -269,6 +269,7 @@ function getDocument(src) {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
const task = new PDFDocumentLoadingTask();
|
const task = new PDFDocumentLoadingTask();
|
||||||
|
const { docId } = task;
|
||||||
|
|
||||||
const url = src.url ? getUrlProp(src.url) : null;
|
const url = src.url ? getUrlProp(src.url) : null;
|
||||||
const data = src.data ? getDataProp(src.data) : null;
|
const data = src.data ? getDataProp(src.data) : null;
|
||||||
@ -339,7 +340,7 @@ function getDocument(src) {
|
|||||||
const canvasFactory =
|
const canvasFactory =
|
||||||
src.canvasFactory || new DefaultCanvasFactory({ ownerDocument });
|
src.canvasFactory || new DefaultCanvasFactory({ ownerDocument });
|
||||||
const filterFactory =
|
const filterFactory =
|
||||||
src.filterFactory || new FilterFactory({ ownerDocument });
|
src.filterFactory || new FilterFactory({ docId, ownerDocument });
|
||||||
|
|
||||||
// Parameters only intended for development/testing purposes.
|
// Parameters only intended for development/testing purposes.
|
||||||
const styleElement =
|
const styleElement =
|
||||||
@ -378,7 +379,6 @@ function getDocument(src) {
|
|||||||
: new PDFWorker(workerParams);
|
: new PDFWorker(workerParams);
|
||||||
task._worker = worker;
|
task._worker = worker;
|
||||||
}
|
}
|
||||||
const docId = task.docId;
|
|
||||||
|
|
||||||
const fetchDocParams = {
|
const fetchDocParams = {
|
||||||
docId,
|
docId,
|
||||||
|
@ -53,11 +53,14 @@ class FilterFactory {
|
|||||||
|
|
||||||
#_defs;
|
#_defs;
|
||||||
|
|
||||||
|
#docId;
|
||||||
|
|
||||||
#document;
|
#document;
|
||||||
|
|
||||||
#id = 0;
|
#id = 0;
|
||||||
|
|
||||||
constructor({ ownerDocument = globalThis.document } = {}) {
|
constructor({ docId, ownerDocument = globalThis.document } = {}) {
|
||||||
|
this.#docId = docId;
|
||||||
this.#document = ownerDocument;
|
this.#document = ownerDocument;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -132,7 +135,7 @@ class FilterFactory {
|
|||||||
// We create a SVG filter: feComponentTransferElement
|
// We create a SVG filter: feComponentTransferElement
|
||||||
// https://www.w3.org/TR/SVG11/filters.html#feComponentTransferElement
|
// https://www.w3.org/TR/SVG11/filters.html#feComponentTransferElement
|
||||||
|
|
||||||
const id = `transfer_map_${this.#id++}`;
|
const id = `g_${this.#docId}_transfer_map_${this.#id++}`;
|
||||||
const url = `url(#${id})`;
|
const url = `url(#${id})`;
|
||||||
this.#cache.set(maps, url);
|
this.#cache.set(maps, url);
|
||||||
this.#cache.set(key, url);
|
this.#cache.set(key, url);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user