Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Embed the PDF in a webpage without using the built-in PDF viewer

Currently I am using the standard way to embed an pdf to the browser, however, the built-in pdf viewer for my target browser is not working as expected. I would like to force (Chrome, Firefox and IE8 (if possible, but IE9+ is also ok)) to use the adobe reader. The problem is , I can only change this option manually. Is there any way to change the option in HTML/ JS/ PHP ? Thanks.

<OBJECT data="YourFile.pdf" TYPE="application/x-pdf" TITLE="SamplePdf" 
WIDTH=200 HEIGHT=100>
    <a href="YourFile.pdf">shree</a> 
</object>

I try to find the solution and someone suggested header, not working unfortunately e.g.

Content-Type: application/pdf
Content-Disposition: inline; filename.pdf
like image 908
user782104 Avatar asked Aug 23 '13 02:08

user782104


4 Answers

I did this a while ago. Using JQuery was a great way to get round this :)

pdf.js:

https://github.com/mozilla/pdf.js

Hope this helps!

like image 151
Bradly Spicer Avatar answered Oct 06 '22 21:10

Bradly Spicer


You can use Google PDF viewer to embed pdf files on to your website. Use this link https://docs.google.com/viewer

Example:

<iframe src="http://docs.google.com/viewer?url={HTTP PATH OF THE PDF FILE}&embedded=true" width="600" height="780" style="border: none;"></iframe>
like image 38
Suresh Peiris Avatar answered Oct 07 '22 12:10

Suresh Peiris


Check out PDFObject which is a Javascript library to embed PDFs in HTML files. It handles browser compatibility pretty well and will most likely work on IE8.

In your HTML, you could set up a div to display the PDFs:

<div id="pdfRenderer"></div>

Then, you can have Javascript code to embed a PDF in that div:

var pdf = new PDFObject({
  url: "https://sample.pdf",
  id: "pdfRendered",
  pdfOpenParams: {
    view: "FitH"
  }
}).embed("pdfRenderer");

Cheers

like image 4
Roy M J Avatar answered Oct 07 '22 12:10

Roy M J


Trick Chrome and Firefox (and maybe other browsers) into displaying the PDFs using the Adobe Reader plugin (for full PDF Open Parameters support among other benefits) by using one of the following 'Adobe PDF in XML Format' types in your embed code:

application/vnd.adobe.pdfxml
application/vnd.adobe.x-mars

This works fine as of my answer today and I'm hopeful it will continue to work fine. I'm using it currently with standard PDF files as a workaround for embedding PDF files in the browser that need to use the Adobe PDF plugin rather than the browser's built-in PDF rendering. Even though my PDF files are standard (non-XML) files, they appear to load just fine with this new application type parameter.

<OBJECT data="YourFile.pdf" TYPE="application/vnd.adobe.pdfxml" TITLE="SamplePdf" 
WIDTH=200 HEIGHT=100>
    <a href="YourFile.pdf">shree</a> 
</object>
like image 1
Andrew Bucklin Avatar answered Oct 07 '22 14:10

Andrew Bucklin