1

我正在开发一个网络应用程序;在管理后端,我需要具有为不同进程执行自动打印作业的功能,这些进程在管理中运行并生成 pdf(标签、装箱单),该文件将发送到我仓库中预先选择的 LAN 网络打印机。

我一直在对此进行一些研究,我知道由于安全问题,像这样的自动打印很难配置。但是,我有一些帖子,人们写道,他们能够通过活动 x、java、打印服务器、客户端软件等来实现这一点……但是对于如何做到这一点并没有明确的大纲。

有人可以帮我找出一种解决方法,当某个进程运行并生成 pdf 文件时,我可以使用它来自动打印到仓库中的不同 LAN 网络打印机?

谢谢!

4

1 回答 1

2

我还管理一个执行这些任务的仓库系统。我不会声称以下解决方案是最好的方法,但它们一直在为我们工作。我们的系统是在使用 Apache 的 Windows 服务器上使用 PHP 5.3 构建的。使用此设置,用户无需从浏览器打印任何内容,所有内容都在服务器端处理。

要求:Apache 需要以管理员权限运行。可能不推荐用于面向 Web 的服务器。

通过 PHP 在 Windows 上打印 PDF:

$file = "c:\\path\\to\\file.pdf";
$exec = '"C:\\Program Files\\bioPDF\\Acrobat Wrapper\\acrowrap.exe" /t ';
session_write_close(); // prevents hanging
pclose(popen($exec. $file . " \\networked\\printer",'r'));

这只是启动阅读器,打印文件,然后关闭阅读器。

在 Linux/Mac 上,您应该能够使用(没有管理员权限):

$file = "/path/to/file.pdf";
$command = "lpr -P /printer/path " . $file;
exec($command);
于 2012-05-08T15:26:14.200 回答