首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Printer_open()打印html输出

Printer_open()打印html输出
EN

Stack Overflow用户
提问于 2013-08-08 05:29:49
回答 3查看 9.2K关注 0票数 8

使用php中的printer_open()函数,我能够打印我在$content变量中保存的字符串,并能够从文件中打印。

代码语言:javascript
复制
$printer = "\\\\Pserver.php.net\\printername"; 
$handler = printer_open($printer);
$content = "Test Content";  //string
printer_write($handler, $content); 
printer_close($handler); 

但是有一个从数据库中生成的html输出,并且显示在网页中,我需要在页面加载后直接打印到相同格式的输出,我尝试了很多,但是我不知道我应该做什么来使打印机在页面使用printer_open()加载后直接打印相同的HTML输出。

我该怎么办?如果有的话,请提出比这更好的方法。

已更新

我不想使用javascript的windows.print()方法,因为它显示了打印对话框,而不是直接向打印机启动打印作业。

我希望用户点击submit表单和打印机直接打印收据,而不问他们任何问题。

EN

回答 3

Stack Overflow用户

发布于 2013-09-20 08:16:48

您可以尝试使用输出缓冲区:

代码语言:javascript
复制
ob_start();
// generate your output from the DB here
// .....

// Send generated output to the printer
printer_write($handler, ob_get_contents());

// And show it to client on the frontend
ob_end_flush();
票数 2
EN

Stack Overflow用户

发布于 2013-11-27 14:43:37

创建一个带有自动焦点( html 5功能的浏览器所需)的隐藏字段,并触发带有html onblur属性(如果用户单击任何其他表单元素的输出)或特定表单元素(按钮)上的on福克斯属性的打印输出。不要提交表单,因为这会导致页面重新加载.

票数 0
EN

Stack Overflow用户

发布于 2014-10-03 13:57:36

正如我理解你的问题,你试图渲染HTML,然后打印它。不幸的是,如果您呈现它的客户端,您将需要打印它客户端-这将启动打印对话框。

您可以在服务器上运行PhantomJS来呈现HTML,保存快照并打印出来,但这听起来像是为了打印发票而造成的巨大的过度浪费。

也许更好的方法是生成一个PDF并打印出来。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18118533

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档