浏览器打印功能,有很多小伙伴可能不太清楚,这里我们可以学习一下。

情景:开发一个需要打印小票的项目。(在订单页里,给客户添加一个打印的操作)

1.假设打印机已经连接好了

2.我们这一节用的浏览器是Google Chrome (配置也是针对google的)

3.注意事项(这一点得看,否则运行失败还不知道问题喔)

开始:

1.打印机

去很多餐饮店,能看见收银台会有一个机器,打印出小票出来,但他们用的方法可能和我们的不一样,我们使用的是浏览器。

但是呢,浏览器也是有浏览器打印功能的,比如在这个页面,你用鼠标点击右键,就能看到一个"打印",点击之后就会弹出一个窗口,里面可能看到我们打印的内容(整个页面)。里面还有"更多设置",你可以根据内容,还有小票的大小尺寸,内容的多少来设置,这一套设置可能会花点时间。记住:这一套配置,是针对google打印的,并且这些操作跟我们编码无关

这些设置,并不是保存在我们服务器里的,是google浏览器的,所以说我们的开发环境配置好了,测试ok,还要去给客户配置

---------------------------我是分割线---------------------------

补充:

在做Google配置之前,我们先磕一些。。。上面说到,浏览器是有打印功能的,在页面鼠标右键可选择打印。 但是客户如果不太会操作电脑,对这些东西不太懂,那怎么办呢?每次都去培训客户吗,这是不正确的选择。所以我们的处理方案是,在代码里自动启动打印功能。

JS里的方法,有一个:print();

<script>
print(); //启动打印功能
</script>

  

添加这么一句,启动我们这个页面的时候,就会弹出打印窗口了。

哇,挺简单的嘛,nonono... 接下来才是问题。我们想一下,打印窗口是弹出来了,但是客户每次都要手动去点击左上角的"打印",如果客户打印小票时,他的订单特别多,那就要一直去点击,如果一不小心点击到"取消",他就懵了,因为还要考虑到,他甚至不太懂可以刷新页面,按下F5键(考虑到工作比较忙,可能会着急忘掉了刷新,或者他本就不知道刷新能重启这个功能)

以上问题,就需去Google里做配置。做了配置之后的效果是什么呢,在这里说明一下:做好配置之后,弹出打印窗口时,客户就不需要去点击"打印",Google浏览器会自动运行"打印"。这样的话,效果就是:弹出打印窗口,自动运行打印并且关闭打印窗口,打印机若连接好,就会打印出小票

---------------------------我是分割线---------------------------

2.Google配置

1).打开google浏览器,在地址栏输入:"chrome://flags/"

2).进入页面之后,按下"Ctrl+F"搜索关键字:"Enable new Print Preview UI",能看到默认值为 Default,我们需要修改为 Disabled

3).修改之后,浏览器下方会弹出提示,点击右侧重启浏览器即可

4).选择google(一般都在桌面上)右键属性,在目标里,最后面添加"--kiosk-printing"

以上,配置好之后,就能成功运行自动打印了。(┭┮﹏┭┮我刚刚亲测了一遍,谁敢说不行站出来)

3.注意事项

这里再强调一下,以上做的配置,只是针对Google,若其他浏览器不行,是正常的!

这里会出现一个问题,就是客户也必须使用Google浏览器,其实问题也不会太大,顶多会出现客户对Google不习惯。能不能劝解客户,就看小伙伴们的水平了。。。

正题:第二点Google配置里,我们是在桌面上找到Google图标,然后在其属性里修改了。这里会出现一个问题,就是:只能用桌面上的这个Google才能实现自动打印。如果你是在Google的目录里,一般是在C盘下,打开程序,是不行的。我们在目录里右键选择属性,能看到,此程序是没有"目标"的,跟桌面上的是不一样的。当然,一般情况下,我们也不会去根目录里打开Google,所以这一点问题不大。

但还有一个,就是我们开发人员,或者客户,通常为了方便,可能会把浏览器设置在"任务栏"里,就是电脑屏幕最下面(windows系统通常是这样),如果我们在桌面上的Google属性里修改配置前,任务栏里已经有了Google,那么在任务栏里启动就不能实现自动打印,必须删除任务栏里的Google,重新在桌面上将Google添加在任务栏里。

最后还有一点,是关于功能上的。自动打印成功之后,我们停留的页面,应该是 "订单小票"页面,那么为了客户方便操作,我们就要去代码里实现功能,当自动打印实现后,就关闭此页面,这样 客户就会返回在订单页面,执行下一个订单的小票打印,就不用手动删除 小票打印页面。

Google自动打印的更多相关文章

  1. C# ITextSharp pdf 自动打印

    PDF生成后直接进入打印预览不用下载 using iTextSharp.text; using iTextSharp.text.pdf; Document pdfDoc = new Document( ...

  2. Google自动广告,将广告代码放置在 HTML 中的什么位置?

    Google自动广告,将广告代码放置在 HTML 中的什么位置? 为自动广告生成广告代码后,您需要将此代码放置在要展示广告的每个网页中.您应将广告代码放置在网页的 <head> 标记(或正 ...

  3. 【MM系列】SAP MM模块-MIGO收货后自动打印收货单

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[MM系列]SAP MM模块-MIGO收货后自动 ...

  4. google test 打印派生类对象

    在Unison中使用google test时,发现EXPECT_EQ在fail时,不能打印Unison Test Language中定义的派生类的对象.于是写了个纯C++的示例,发现在只定义基类的op ...

  5. google浏览器 打印A4 最大宽度和高度px

    width: 1563px;(max) + = 分页了 + = 分页了 + = 没有分页 / ViewBag.results[].Count)); <td width="15%&quo ...

  6. 关于input框仿百度/google自动提示的方法

    引入jquery-autocomplete文件 链接:https://pan.baidu.com/s/1hW0XBYH8ZgJgMSY1Ce6Pig 密码:tv5b $(function() { $( ...

  7. 仿Google首页搜索自动补全

    仿Google自动补全,实现细节: 后台是简单的servlet(其实就是负责后台处理数据交互的,没必要非跌用个struts...什么的) 传输介质:xml 使用jQuery js框架 功能实现: 如果 ...

  8. BarTender怎样同时打印自动日期和流水号?

    大多数条形码中都会含有日期和数量信息,而且大部分都是两者兼具.有些使用BarTender软件的小伙伴,不知道怎么同时打印自动日期和流水号,即条形码中兼有自动日期和序列号,且它们都能根据打印的变化而变化 ...

  9. 使用jQuery模拟Google的自动提示效果

    注意: 1.本功能使用SqlServler2000中的示例数据库Northwind,请打SP3或SP4补丁:2.请下载jQuery组件,河西FTP中有下载:3.本功能实现类似Google自动提示的效果 ...

随机推荐

  1. shell编程(2)

    一.变量简介 变量是任何一种编程语言都必不可少的组成部分,变量用来存放各种数据.脚本语言在定义变量时通常不需要指明类型,直接赋值即可,shell变量也遵循这个规则. 在Bash shell 中,每一个 ...

  2. 硬核讲解 Jetpack 之 LifeCycle 源码篇

    前一篇 硬核讲解 Jetpack 之 LifeCycle 使用篇 主要介绍了 LifeCycle 存在的意义,基本和进阶的使用方法.今天话不多说,直接开始撸源码. 本文基于我手里的 android_9 ...

  3. 去除表视图section的粘性问题

    //  去除section的粘性 - (void)scrollViewDidScroll:(UIScrollView *)scrollView{ if (scrollView == self.tabl ...

  4. xhprof代码添加分析性能

    <?php xhprof_enable( XHPROF_FLAGS_MEMORY, [ 'ignored_functions' => [ //'call_user_func', //'ca ...

  5. SpringBoot: 10.整合mybatis(转)

    需求:通过使用 SpringBoot+SpringMVC+MyBatis 整合实现一个对数据库中的 t_user 表的 CRUD 的操作 1.创建maven项目,添加项目所需依赖 <!--spr ...

  6. 关于RNN(Recurrent Neural Network)的一篇文章

    文章链接:https://blog.csdn.net/zhaojc1995/article/details/80572098 写的很好!

  7. 《剑指offer》Q01-12 (牛客10.11)

    目录 T1 二维部分有序数组查找 ☆ T2 字符串字符不等长替换 - 从后往前 T3 返回链表的反序 vector T4 重建二叉树 T5 两个栈模拟队列 T6 旋转数组中的最小元素 - 二分或暴力 ...

  8. 合并多个tensorflow模型的办法

    直接上代码: import tensorflow as tf from tensorflow.python.tools import freeze_graph from tensorflow.pyth ...

  9. IDEA debug漏洞第二弹(fastjson,version<1.2.47)

    首先这个漏洞调试不需要非要使用docker,本身是一个jar包的问题.所以我们可以自己写一个小java代码来直接调试. POC如下 {"name":{"@type&quo ...

  10. 【FFMEPG】windows下编译ffmpeg2.5——使用VS2013,ARMLINUX,ANDORID编译ffmpeg

    原文:http://blog.csdn.net/finewind/article/details/42784557 一.准备: 1. 本机环境: win7 64bit: 2. 安装MinGW到C:\M ...