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

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

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. Vue插件编写、用法详解(附demo)

    Vue插件编写.用法详解(附demo) 1.概述 简单来说,插件就是指对Vue的功能的增强或补充. 比如说,让你在每个单页面的组件里,都可以调用某个方法,或者共享使用某个变量,或者在某个方法之前执行一 ...

  2. test result

  3. 阶段5 3.微服务项目【学成在线】_day03 CMS页面管理开发_17-异常处理-可预知异常处理-异常处理测试

    ResultCode有很多的实现类 cmsCode有很多类型的错误异常 pgeService内当CmsPage这个对象为空的时候,异常类型就可以抛出CmsCode里面的错误代码 if(cmsPage1 ...

  4. React Native init初始化项目时报错

    之前新建RN项目都不会出现这个问题,今天报错如下,这里记录下吧. 报错截图: This will walk you through creating a new React Native projec ...

  5. Cannon 60D 电池卡在电池槽了,拔不出来怎么办?

    事情是这样的,本来好好的电池在电池槽里的,后来拿去充电了,充满后就准备装回去,然后一个不小心,电池掉地上了,就看了一下没摔爆,所以也没特别留意有没有什么地方摔坏摔瘸角,然后就往相机里塞,突然就发现塞不 ...

  6. Sed---linux系统三剑客(二)

    grep .sed.awk被称为linux中的"三剑客". grep 更适合单纯的查找或匹配文本 sed  更适合编辑匹配到的文本 awk  更适合格式化文本,对文本进行较复杂格式 ...

  7. ip routing 开启三层路由模式

    no ip router是关闭路由协议,no ip routing 是关闭三层的路由工作模式 no ip route是删除某条(静态)路由,比如no ip router 0.0.0.0 0.0.0.0 ...

  8. nload 安装和使用

    nload是一个很小巧的工具,用来监控当前系统的网速 安装 MAC brew install nload Linux 下载地址:https://sourceforge.net/projects/nlo ...

  9. Java学习笔记-枚举类

    实例有限且固定的类成为枚举类 枚举类的实现 早期时候的实现形式: public static final int SEASON_SPRING = 1; public static final int ...

  10. nodejs nvm npm常用命令

    ---恢复内容开始--- 一行命令搞定node.js 版本升级 node有一个模块叫n(这名字可够短的...),是专门用来管理node.js的版本的. 首先安装n模块: npm install -g ...