我有一个小工具来收集地址。我想通过热敏打印机打印特定地址。数据库是MySQL ..我做一个AJAX查询,根据特定要求(对于前手机号码)列出我想要搜索的所有地址。编码在PhP和JQuery中。我把它们列为一张桌子。现在我想在所有单独的地址行旁边添加一个打印按钮,点击其中,我想在我的收据打印机中打印该特定地址。
它只是2行打印。如果我只是将地址复制到一个新的HTML页面并打印它,问题是打印机不会在2行后停止..打印下面的整个空白区域。
很抱歉,以前从未做过或曾经在打印机上工作过。请有人帮我这个。
答案 0 :(得分:1)
您可以为此创建一个iframe,其中只包含您要打印的内容,然后进行打印。打印机如何处理html因打印机而异,您的代码无法控制。
答案 1 :(得分:1)
快速修复将使用最小尺寸的弹出窗口(或可能是iFrame),但就用户体验而言,这当然会很俗气,特别是如果此解决方案是产品/服务的一部分,那么提供给商业客户。
WIN32 API:这样做的正确方法需要一些额外的工作,但值得花时间和精力,特别是如果你经常采取这些类型的项目。不幸的是,它比编写几行代码并为您发布答案要多得多。
步骤1)下载该打印机的驱动程序和文档包。由于这个原因,他们通常拥有广泛的开发者文档。跳到Win32 API部分。我在这里找到了一个打印机包: https://download.epson-biz.com/modules/pos/index.php?page=single_soft&cid=2783&scat=31&pcat=3
步骤2)查看PHP Win32 API实现并设置几个测试调用。以下是文档的链接:http://php.net/manual/en/ref.w32api.php
步骤3)设置一个类/模块/函数,根据需要从PHP中查找和打印您的地址。
步骤4)要在最终切换到服务器/客户端设置时解决打印问题,可以将PHP代码编译为可执行文件,在每个通过浏览器接收地址打印文件的客户端上设置mime类型并直接发送到您的.exe文件。
很久以前,我不得不将ELTRON编码的磁条(信用卡)打印机与Perl集成在一起,用于大型事件管理系统。它就像魔法一样。
再次抱歉,这并不像几行快速代码那么简单,但您可以在通过打印机API工作时发布更具体的问题。
祝你好运。