mirror of
https://github.com/mozilla/pdf.js.git
synced 2025-04-22 16:18:08 +02:00
Merge pull request #2695 from yurydelendik/copy-protection-2
Fixes text search for "secured" documents (take 2)
This commit is contained in:
commit
51c81a1d01
6 changed files with 21 additions and 5 deletions
|
@ -298,7 +298,7 @@ var PDFPageProxy = (function PDFPageProxyClosure() {
|
|||
}
|
||||
|
||||
var gfx = new CanvasGraphics(params.canvasContext, this.commonObjs,
|
||||
this.objs, !this.pageInfo.disableTextLayer && params.textLayer);
|
||||
this.objs, params.textLayer);
|
||||
try {
|
||||
this.display(gfx, params.viewport, complete, continueCallback);
|
||||
} catch (e) {
|
||||
|
|
|
@ -538,8 +538,10 @@ var PDFDocument = (function PDFDocumentClosure() {
|
|||
return shadow(this, 'numPages', num);
|
||||
},
|
||||
getDocumentInfo: function PDFDocument_getDocumentInfo() {
|
||||
var encrypt = this.xref.encrypt;
|
||||
var docInfo = {
|
||||
PDFFormatVersion: this.pdfFormatVersion,
|
||||
IsTextCopyDisabled: encrypt ? encrypt.disableTextCopy : false,
|
||||
IsAcroFormPresent: !!this.acroForm
|
||||
};
|
||||
if (this.xref.trailer.has('Info')) {
|
||||
|
|
|
@ -561,7 +561,7 @@ var CipherTransformFactory = (function CipherTransformFactoryClosure() {
|
|||
var ownerPassword = stringToBytes(dict.get('O'));
|
||||
var userPassword = stringToBytes(dict.get('U'));
|
||||
var flags = dict.get('P');
|
||||
this.disableTextLayer = !(flags & 16);
|
||||
this.disableTextCopy = !(flags & 16);
|
||||
var revision = dict.get('R');
|
||||
var encryptMetadata = algorithm == 4 && // meaningful when V is 4
|
||||
dict.get('EncryptMetadata') !== false; // makes true as default value
|
||||
|
|
|
@ -214,13 +214,11 @@ var WorkerMessageHandler = {
|
|||
handler.on('GetPageRequest', function wphSetupGetPage(data) {
|
||||
var pageNumber = data.pageIndex + 1;
|
||||
var pdfPage = pdfModel.getPage(pageNumber);
|
||||
var encrypt = pdfModel.xref.encrypt;
|
||||
var page = {
|
||||
pageIndex: data.pageIndex,
|
||||
rotate: pdfPage.rotate,
|
||||
ref: pdfPage.ref,
|
||||
view: pdfPage.view,
|
||||
disableTextLayer: encrypt ? encrypt.disableTextLayer : false
|
||||
view: pdfPage.view
|
||||
};
|
||||
handler.send('GetPage', {pageInfo: page});
|
||||
});
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue