有什么 js 或者 PHP 直接调用打印机打印文件不预览的方法吗。

做一个项目,服务器生成了一个 pdf 文件。现在由于保密要求,需要操作员直接点击一个按钮就把这个文件从打印机打印出来。而不能新开一个窗口看见这个 pdf 文件的内容,再点击打印,也不能预览打印的内容。有什么比较好的解决方案吗。

相关文章

9 thoughts on “有什么 js 或者 PHP 直接调用打印机打印文件不预览的方法吗。

  1. https://stackoverflow.com/questions/13045153/directly-print-with-php

    Now printing a PDF file is a totally different issue. You can print it via shell execution:

    shell_exec( ‘lpr /path/to/file/filename.pdf’ );
    Or with a PHP class found here:

    require_once( ‘PrintIPP.php’ );

    $ipp = new PrintIPP();
    $ipp->setHost( ‘localhost’ );
    $ipp->setPrinterURI( ‘/printers/epson’ );
    $ipp->setData( ‘/path/to/file/filename.pdf’ );

    $ipp->printJob();

  2. 你要用浏览器打印基本没办法 只能走 chrome 的预览
    如果要不走那个直接调用打印机就只能本地架个 php 服务器 然后 php 直接调用打印机

    当然你还得解决打印的人不会拿起来看一眼

  3. PHP 不能直接操作浏览器,即客户端的任何设备的,PHP 对硬件发起的任何动作都操作的是服务器,除非你要把 PHP 服务器搭建在操作员电脑里。
    然后就是如果必须要用 JavaScript 或者必须要使用浏览器内建打印,那就绕不过去浏览器自己的预览。

    所以 你可以像 #5 说的,在电脑里搭一个 PHP 服务端然后起 PHP 调用打印机
    或者可以写一个小脚本,浏览器端请求 localhost 特定端口,POST 发送文件,然后脚本调用打印。
    但是只要服务端需要回传给客户端文件,那客户端完全可以通过各种方式获取到想要的文件。除非进行加密,打印端还需要进行防护,这样就比较复杂了

  4. 很简单啊 … 我做过类似的项目 …

    Web 服务器放公司走内网 … 客户机连内网 Web 服务器 … 服务器 USB 直连打印机 …

    下打印指令的时候直接 Web 服务器后台把文件加入打印队列就好 … 啥也不用给客户端传 …

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注