Creates IPDFTextLayerFactory interface
This commit is contained in:
parent
f68678086d
commit
7663942ee5
@ -83,3 +83,17 @@ ILastScrollSource.prototype = {
|
|||||||
*/
|
*/
|
||||||
get lastScroll() {},
|
get lastScroll() {},
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @interface
|
||||||
|
*/
|
||||||
|
function IPDFTextLayerFactory() {}
|
||||||
|
IPDFTextLayerFactory.prototype = {
|
||||||
|
/**
|
||||||
|
* @param {HTMLDivElement} textLayerDiv
|
||||||
|
* @param {number} pageIndex
|
||||||
|
* @param {PageViewport} viewport
|
||||||
|
* @returns {TextLayerBuilder}
|
||||||
|
*/
|
||||||
|
createTextLayerBuilder: function (textLayerDiv, pageIndex, viewport) {}
|
||||||
|
};
|
||||||
|
@ -29,7 +29,7 @@
|
|||||||
* @property {PDFRenderingQueue} renderingQueue - The rendering queue object.
|
* @property {PDFRenderingQueue} renderingQueue - The rendering queue object.
|
||||||
* @property {Cache} cache - The page cache.
|
* @property {Cache} cache - The page cache.
|
||||||
* @property {PDFPageSource} pageSource
|
* @property {PDFPageSource} pageSource
|
||||||
* @property {PDFViewer} viewer
|
* @property {IPDFTextLayerFactory} textLayerFactory
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -50,7 +50,7 @@ var PDFPageView = (function PDFPageViewClosure() {
|
|||||||
var renderingQueue = options.renderingQueue;
|
var renderingQueue = options.renderingQueue;
|
||||||
var cache = options.cache;
|
var cache = options.cache;
|
||||||
var pageSource = options.pageSource;
|
var pageSource = options.pageSource;
|
||||||
var viewer = options.viewer;
|
var textLayerFactory = options.textLayerFactory;
|
||||||
|
|
||||||
this.id = id;
|
this.id = id;
|
||||||
this.renderingId = 'page' + id;
|
this.renderingId = 'page' + id;
|
||||||
@ -65,7 +65,7 @@ var PDFPageView = (function PDFPageViewClosure() {
|
|||||||
this.renderingQueue = renderingQueue;
|
this.renderingQueue = renderingQueue;
|
||||||
this.cache = cache;
|
this.cache = cache;
|
||||||
this.pageSource = pageSource;
|
this.pageSource = pageSource;
|
||||||
this.viewer = viewer;
|
this.textLayerFactory = textLayerFactory;
|
||||||
|
|
||||||
this.renderingState = RenderingStates.INITIAL;
|
this.renderingState = RenderingStates.INITIAL;
|
||||||
this.resume = null;
|
this.resume = null;
|
||||||
@ -454,7 +454,7 @@ var PDFPageView = (function PDFPageViewClosure() {
|
|||||||
|
|
||||||
var textLayerDiv = null;
|
var textLayerDiv = null;
|
||||||
var textLayer = null;
|
var textLayer = null;
|
||||||
if (!PDFJS.disableTextLayer) {
|
if (this.textLayerFactory) {
|
||||||
textLayerDiv = document.createElement('div');
|
textLayerDiv = document.createElement('div');
|
||||||
textLayerDiv.className = 'textLayer';
|
textLayerDiv.className = 'textLayer';
|
||||||
textLayerDiv.style.width = canvas.style.width;
|
textLayerDiv.style.width = canvas.style.width;
|
||||||
@ -466,9 +466,9 @@ var PDFPageView = (function PDFPageViewClosure() {
|
|||||||
div.appendChild(textLayerDiv);
|
div.appendChild(textLayerDiv);
|
||||||
}
|
}
|
||||||
|
|
||||||
textLayer = this.viewer.createTextLayerBuilder(textLayerDiv,
|
textLayer = this.textLayerFactory.createTextLayerBuilder(textLayerDiv,
|
||||||
this.id - 1,
|
this.id - 1,
|
||||||
this.viewport);
|
this.viewport);
|
||||||
}
|
}
|
||||||
this.textLayer = textLayer;
|
this.textLayer = textLayer;
|
||||||
|
|
||||||
|
@ -236,6 +236,10 @@ var PDFViewer = (function pdfViewer() {
|
|||||||
var viewport = pdfPage.getViewport(scale * CSS_UNITS);
|
var viewport = pdfPage.getViewport(scale * CSS_UNITS);
|
||||||
for (var pageNum = 1; pageNum <= pagesCount; ++pageNum) {
|
for (var pageNum = 1; pageNum <= pagesCount; ++pageNum) {
|
||||||
var pageSource = new PDFPageSource(pdfDocument, pageNum);
|
var pageSource = new PDFPageSource(pdfDocument, pageNum);
|
||||||
|
var textLayerFactory = null;
|
||||||
|
if (!PDFJS.disableTextLayer) {
|
||||||
|
textLayerFactory = this;
|
||||||
|
}
|
||||||
var pageView = new PDFPageView({
|
var pageView = new PDFPageView({
|
||||||
container: this.viewer,
|
container: this.viewer,
|
||||||
id: pageNum,
|
id: pageNum,
|
||||||
@ -245,7 +249,7 @@ var PDFViewer = (function pdfViewer() {
|
|||||||
renderingQueue: this.renderingQueue,
|
renderingQueue: this.renderingQueue,
|
||||||
cache: this.cache,
|
cache: this.cache,
|
||||||
pageSource: pageSource,
|
pageSource: pageSource,
|
||||||
viewer: this
|
textLayerFactory: textLayerFactory
|
||||||
});
|
});
|
||||||
bindOnAfterDraw(pageView);
|
bindOnAfterDraw(pageView);
|
||||||
this.pages.push(pageView);
|
this.pages.push(pageView);
|
||||||
@ -629,9 +633,9 @@ var PDFViewer = (function pdfViewer() {
|
|||||||
},
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param textLayerDiv {HTMLDivElement}
|
* @param {HTMLDivElement} textLayerDiv
|
||||||
* @param pageIndex {number}
|
* @param {number} pageIndex
|
||||||
* @param viewport {PageViewport}
|
* @param {PageViewport} viewport
|
||||||
* @returns {TextLayerBuilder}
|
* @returns {TextLayerBuilder}
|
||||||
*/
|
*/
|
||||||
createTextLayerBuilder: function (textLayerDiv, pageIndex, viewport) {
|
createTextLayerBuilder: function (textLayerDiv, pageIndex, viewport) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user