Hai*_*uha 7 javascript css printing django
我正在开发一个基于网络的POS.不幸的是,POS必须通过热敏收据打印机(TM-T88IV,Epson)打印.Web应用程序基于Django.当用户单击Web应用程序中的控件时,是否有任何关于系统如何自动打印收据的想法?
我正在考虑在python中为此目的创建另一个服务,但这会破坏拥有Web应用程序的目的,您需要的只是浏览器,而无需任何额外的安装.
顺便说一句,打印机连接到客户端,应该"静默"触发打印,这意味着不需要人工干预.交易完成后,应开始打印.
欢迎任何建议!
我看到两种方法来实现它:
如果每台客户都有一台打印机,那么这是一个很好的解决方案(因为您只能使用默认打印机).请记住,您可以删除打印服务器(对资源非常有限的设备非常有用),制作浏览器应自动执行的脚本以打开您的文件.你可以使用这样的东西:
#!/bin/bash
printer="/dev/usb/lp0"
encoding_needed=true #false
if $encoding_needed; then
iconv -c -t 437 $1 > $printer
else
cat $1 > $printer
fi
Run Code Online (Sandbox Code Playgroud)
print.always_print_silent并将其设置为Trueprint.show_print_progress并将其设置为False请记住,还有其他扩展用于制作自助服务终端,例如:
您可以使用以下选项启动它: --kiosk --kiosk-printing
对于信息亭模式,请参阅:http://support.microsoft.com/kb/154780
好的解决方案:
这里有两个选项:打印html页面或提供PDF文件。
注意:最初不清楚打印是否应该是自动的,这意味着答案对OP并不直接有用。
将收据显示为html页面,然后创建media="print"CSS样式表,供浏览器在打印收据时使用。有很多要说CSS打印样式表,但最重要的是,你应该删除所有的导航元素和图像将要打印昂贵。
当您执行此操作时,用户将只需要自己打印页面即可。您还可以添加“打印我”按钮,该按钮将向用户显示打印机对话框。这是通过JavaScript完成的:
<a href="javascript:window.print()">Print this page</a>
Run Code Online (Sandbox Code Playgroud)
(这对没有JS的客户来说有点麻烦,请查看此有关JS打印的教程,以获得更好的方法。)
在Django中生成PDF,并将其显示给用户。他可以自由打印它或稍后将其保存在计算机上。大多数网站都这样做是因为控制PDF文件的布局要容易得多,并且使其看起来像真实的收据也更加容易。
| 归档时间: |
|
| 查看次数: |
10056 次 |
| 最近记录: |