How to print a PDF from the browser

前端 未结 7 1586
天涯浪人
天涯浪人 2020-11-28 07:53

In a Web application, is it possible to force a PDF file to be printed on the client? If the browser is configured to open the PDF inside the window, I guess that calling wi

7条回答
  •  悲哀的现实
    2020-11-28 08:04

    You can't print a PDF document directly from browser using Javascript. The Javascript function window.print() use the browser printing function and this is not what you need. You can achieve your aim starting the print through Java Web Start. Put your PDF document directly into the jnlp so you can run a Java program that recieve the raw PDF document as argument. Now you're running in the system and no longer in the browser, so you can directly interface with printing driver through JAVA API. This seem quite simple but really it's not because the JAVA printing API doesn't accept a file as input but a particular data structure that implements the ava.awt.print.Pageable interface.

    Exist a web service at www.pdfprint.it that do all the work for you. Here a snippet taken from the official documentation.

    You only need to get the jnlp file, put in your PDF document and send the jnlp to the browser. The JAVA program that run the printing will be dowloaded directly from the web service. You can also set some printing options as copies, sides, and so on

提交回复
热议问题