Server side: PHP
How to print PDF documents without open the PDF file,
I have the set of PDF documents in one folder, i want to take print of that PDF file without opening the PDF file and Print dialog box,
Right now my design looks like this.
Print below document
PDF Document 1
PDF Document 2
PDF Document 3
PDF Document 4
This is not possible - at least not on the front-end. Keep in mind that on the front-end, the end user is in control. The ability to print w/o user's permission/interaction would be a security flaw. A lot of programmers would take advantage of that just to screw with the end users ;)
Related
I am building a list of PDFs from server side in HTML. In the list I'd like to include a a print button . Is there some way to directly open the Print dialog for the PDF without the user seeing the PDF or opening a PDF viewer? Or Can I use print.Js Library in this case
I have an online web page and in this page there is a form with submit button. What I want is now to print a test.pdf file (always the same file) located in my local drive when I click the submit button. Is is possible to send this file to the printer installed in my local network by clicking the submit button on an online web page?
in other words:
Web page is online and it is on a different server.
Pdf file is located in my local drive.
I want to write a code on my online web page that always send the same pdf file to the printer installed in local network!
If it is possible, can anyone explain please? I searched a lot on web but could not find what I want!
The PECL printer library is for server-side printing. You have to have the printer connected to the server the script is running on.
If your clients need to do the printing, you cannot use it. You cannot do the printer queueing with JS alone. If you are restricted to using the browser only, best way to go about this would be loading out all the pages you want to print in one HTML page with proper CSS page breaks. But beware, there might be browser performance issues depending on the size of that one page.
Another thing you could do is convert that HTML internally to a PDF and then allow clients to print it. This doesn't allow queueing, but serves the purpose.
I have created a HTML project. But my main aim is to display the pdf's on my site so that users can't save or download them is this possible using (https://mozilla.github.io/pdf.js/) viewer? If so how can i do it because i'm trying to output a lot of pdfs and this just seems impossible to do looking at the code.
No, it's not possible to display native pdfs to the user without allowing them to download them. By the nature of http, they will have had to download the pdf data in order for them to be displayed.
However, you could take snapshots of the pdf on the server, and display these to the user as pngs.
There are a number of libraries that will allow you to convert the first page of a pdf to an image, I suggest you start by trying to implement one of those.
I am working on a web application using asp.net.
One of requirements demands that I open a given pdf file containing form fields, fill the fields like checking the check boxes, selecting the values from the select inputs and entering the text in text boxes etc.
Once the fields are set then I need to submit it to server and save this as a new pdf file or update the same pdf file.
I don't have a submit button in the pdf itself. I need to submit the details to server using a button outside the pdf file.
When you have a file on a server and you serve it to a client, there are two instances of the file: one on the server and one on the client.
The end user can fill out the form on the client, but will need a button on the PDF if you want him to submit the data he entered to the server. This is explained here: Edit pdf embedded in the browser and save the pdf directly to server
Your requirement to have a button outside the PDF is in most cases impossible: it requires establishing communication between the PDF viewer and the browser. This is only possible in a very specific environment: it requires the Adobe Reader plug-in and it won't ever work on Mac. See also PDF hostContainer callback
You need to reconsider the requirement of having a button outside the PDF! I've been working on a similar project where the submit button was added to the form on-the-fly. The button was only visible on the PDF on the client. The client used that button to submit the data.
Once the data is submitted (see Edit pdf embedded in the browser and save the pdf directly to server to find out in which form the data can be transmitted), you can fill out the form on the server-side. This is explained here:
How to fill out a pdf file programatically?
Saving .xfdf as .pdf
... (this is a very common question; a simple search will reveal more answers)
The form on your server is your template. I assume that this template will be served to many different people. If that is true, then you do not want to replace that template with a form that is filled out by the previous user! (This code cause some serious privacy issues.)
If you really want to update the PDF that exists on the server (instead of creating a new copy), you might also want to read the answer to this question: How to update a PDF without creating a new PDF?
I have a printable invoice system on my website. This is done with a print.html.erb version of my invoice show page, which is embedded in an iframe and then printed using javascript $("#print-frame").get(0).contentWindow.print();. So it essentially prints the print.html.erb file.
I want to be able to send the exact same invoice as a pdf in an email from a controller. In other words, it should look exactly like the print preview of this page (which can be previewed using finder in pdf if you use Firefox)
(print.html.erb has inline stylesheets)
How?
We use acts_as_flying_saucer for this - it's a rails wrapper for flying_saucer which is a java app that converts html pages to pdfs.
https://github.com/amardaxini/acts_as_flying_saucer
When you print your page, it will use any stylesheets with media set to "print" or "all". You would set up a template for rendering to pdf which uses the same stylesheets. You can then view the page in the browser with this template - it should look like your print preview. Then you can render the page to pdf confident that what you see is what you get. You don't need to go through this process every time, just when you're first setting it up really, but it's good as you can test the formatting in a web page without having to render to pdf every time.
Couple of potential gotchas:
Your pages need to pass a strict XHTML test. They should anyway, but in the browser you can get away with being a bit sloppy, but not here. xmllint is handy for debugging, there are also various browser plugins for XHTML validation.
when you have locally sourced images in your page, <img> tags will need to be modified to use a filesystem location instead of a path relative to your public folder as you would normally.