Closed
Bug 874200
Opened 12 years ago
Closed 5 years ago
Printing the contents of a pdf.js iframe fails
Categories
(Firefox :: PDF Viewer, defect, P3)
Tracking
()
RESOLVED
DUPLICATE
of bug 911444
People
(Reporter: peterbe, Unassigned)
Details
(Whiteboard: [pdfjs-c-integration][pdfjs-d-printing])
This is not to be confused with https://bugzilla.mozilla.org/show_bug.cgi?id=792816 which is about permissions on the PDF file. Not about security within the browser.
To reproduce, try http://storage.michaelaquilina.com/ff-print/ (click on "Print the PDF") and notice the "[13:34:55.653] Error: Permission denied to access property 'print' @ http://storage.michaelaquilina.com/ff-print/:10" console message.
This means that the second example on https://developer.mozilla.org/en-US/docs/Printing is broken if the URL you load in the iframe is a PDF file.
This used to work on Firefox 12 (the oldest I had available) but isn't working in 21, 23 or 24. (haven't tested Beta).
It also works in Chrome.
Updated•12 years ago
|
Component: General → PDF Viewer
(In reply to Peter Bengtsson [:peterbe] from comment #0)
> This used to work on Firefox 12 (the oldest I had available) but isn't
> working in 21, 23 or 24. (haven't tested Beta).
> It also works in Chrome.
FF12 didn't include PDF.js, so is the issue reproducible with a 3rd-party PDF reader loading the PDF document?
I tried with FF8, clicking on "Print the PDF" doesn't do anything.
Flags: needinfo?(peterbe)
Comment 2•12 years ago
|
||
This works fine for me with Adobe Reader on Windows 7 w/FF21, but not pdf.js
When loading with Adobe Reader, the iframe loads a PluginDocument which creates an Adobe Reader object. PluginDocument has a hook for forwarding print calls to the plugin, so Reader's print function is called.
pdf.js appears to load as a chrome document, which the content page cannot reach into. It either needs to provide a similar print hook or run its top-level document as content.
Reporter | ||
Comment 3•12 years ago
|
||
(In reply to Loic from comment #1)
> (In reply to Peter Bengtsson [:peterbe] from comment #0)
> > This used to work on Firefox 12 (the oldest I had available) but isn't
> > working in 21, 23 or 24. (haven't tested Beta).
> > It also works in Chrome.
>
> FF12 didn't include PDF.js, so is the issue reproducible with a 3rd-party
> PDF reader loading the PDF document?
>
Yes it's most likely ever since pdf.js was introduced.
> I tried with FF8, clicking on "Print the PDF" doesn't do anything.
Open the Web Console and you'll see the permission error.
Flags: needinfo?(peterbe)
Updated•12 years ago
|
Priority: -- → P3
Whiteboard: [pdfjs-c-integration][pdfjs-d-printing]
Updated•12 years ago
|
Summary: Printing the contents of an iframe that loads a PDF is no longer possible → Printing the contents of a pdf.js iframe fails
Comment 4•10 years ago
|
||
Relevant comment from https://github.com/mozilla/pdf.js/issues/5397#issuecomment-100372486:
> I think I know the reason for this, at least in Firefox. In a simple example such as the above,
> if you use the Firefox DevTools to examine document.domain in both the main page and in the
> iframe, I found that document.domain is pdf.js for the PDF.js renderer—so the browser's cross-origin
> restrictions are kicking in.
Similarly, I don't think this is directly a PDF.js bug, though I've no idea if there is a good fix.
> Additionally, if I built PDF.js from source, and set my iframe to web/viewer.html?file=, then calling
> telling the iframe to print (as in the OP), it worked fine.
Updated•5 years ago
|
Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → DUPLICATE
You need to log in
before you can comment on or make changes to this bug.
Description
•