Android设备打印比较麻烦,一般设备厂商都提供原生app开发的SDK,我们web开发者为难了,不会原生开发啊

给大家提供一个思路,实现web加壳,利用打印浏览器实现

简单来说就是把我们的web页面嵌入浏览器中

web页面的打印功能通过js与浏览器互动

浏览器通过调用硬件SDK实现打印

1、机器安装最新SDK,已安装请忽略

2、下载安装本页下载连接中的打印浏览器并安装

3、对照下方事例代码,修改web页面打印功能

4、打印浏览器中打开web页面,测试打印功能

5、默认主页可以在SD卡根目录修改homepage.txt中的网址

*以上所有步骤必须在智谷联产品上使用,详情咨询销售工程师

 

 

软件支持android网页打印工具,安卓网页打印工具,h5页面打印,浏览器打印,js打印工具

web页面按照如下事例,修改打印函数代码,调用打印API即可完成打印功能

<html>
<head>
    <link rel="stylesheet" href="//g.alicdn.com/msui/sm/0.6.2/css/sm.min.css">
    <script type='text/javascript' src='//g.alicdn.com/sj/lib/zepto/zepto.min.js' charset='utf-8'></script>
    <script type='text/javascript' src='//g.alicdn.com/msui/sm/0.6.2/js/sm.min.js' charset='utf-8'></script>
    <meta http-equiv="Content-Type" content="text/html;charset=utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1" />
    <style type="text/css">
        div {
            margin: 5px 0;
        }         input {
            width: 49%;
            height: 45 px;
            margin-right: 1%;
            margin-bottom: 1%;
        }         #tipinfo {
            font-size: 15px;
            color: rgb(255,0,0);
            font-style: italic;
            height: auto;
        }
    </style>
    <script type="text/javascript">         function javacalljs() {
            document.getElementById("tipinfo").innerHTML =
                "<br\>JAVA调用了JS的无参函数";
        }         function javacalljswith(arg) {
            document.getElementById("tipinfo").innerHTML = (arg);
        }
    </script>
</head>
<body>
    <header class="bar bar-nav">
        <h1 class='title'>网页打印演示</h1>
    </header>
    <div class="content">
        <div class="content-padded grid-demo">             <div id="tipinfo">打印机状态</div>
            <div class="item-content">
                <div class="item-media"><i class="icon icon-form-comment"></i></div>
                <div class="item-inner">
                    <div class="item-title label">输入打印内容</div>
                    <div class="item-input">
                        <textarea id="inputtxt">打印内容测试,一维码生成请输入数字</textarea>
                    </div>
                </div>
            </div>
            <div class="row">
                <div class="col-50">
                    <input type="button" class="button button-fill" value="生成二维码" onclick="window.android.createQRCode(document.getElementById('inputtxt').value)" />
                </div>
                <div class="col-50">
                    <input type="button" class="button button-fill" value="生成条码" onclick="window.android.createBarCode(document.getElementById('inputtxt').value)" />
                </div>
            </div>
            <div class="row">
                <div class="col-50">
                    <input type="button" class="button button-fill" value="打印文本" onclick="window.android.printText(document.getElementById('inputtxt').value)" />
                </div>
                <div class="col-50">
                    <input type="button" class="button button-fill" value="打印Unicode" onclick="window.android.printUnicode('hello, begin to smart print!')" />
                </div>
            </div>
            <div class="row">
                <div class="col-50">
                    <input type="button" class="button button-fill" value="选择图片" onclick="window.android.selectPic()" />
                </div>
                <div class="col-50">
                    <input type="button" class="button button-fill" value="打印图片" onclick="window.android.printPic()" />
                </div>
            </div>
            <div class="row">
                <div class="col-50">
                    <input type="button" class="button button-fill" value="打印网络图片" onclick="window.android.printNetPic()" />
                </div>
                <div class="col-50">
                    <input type="button" class="button button-fill" value="打印模板二" onclick="window.android.printStyleTwo()" />
                </div>
            </div>
            <div class="row">
                <div class="col-50">
                    <input type="button" class="button button-fill" value="打印模板一" onclick="window.android.printStyleOne()" />
                </div>
                <div class="col-50">
                    <input type="button" class="button button-fill" value="打印模板三" onclick="window.android.printStyleThree()" />
                </div>
            </div>
            <div class="row">
                <div class="col-50">
                    <input type="button" class="button button-fill" value="获取打印机状态" onclick="window.android.getPrintStatus()" />
                </div>
            </div>
        </div>
    </div>
</body>
</html>
												

android网页打印,安卓网页打印,h5页面打印,浏览器打印,js打印工具的更多相关文章

  1. 安卓Native和H5页面进行交互

    安卓Native和H5页面进行交互 1.H5页面调用安卓Native界面 1)通过给webView添加JsInterface,安卓提供接口,让H5来进行调用    a)安卓写一个类,里面的方法需要用通 ...

  2. 安卓 apk 嵌入H5页面只显示部分

    安卓 apk 嵌入H5页面只显示部分(有空白页出现) 解决方案 没有加载的是js部分,需要在安卓那边加上一串代码 webView.getSetting().setDomStorageEnabled(t ...

  3. h5页面在浏览器上好好的,到手机上熄火了又看不到报错信息怎么办?

    背景 最近小编接了一个新需求,用h5开发页面,通过webview嵌入原生APP中,自己在浏览器上开发爽歪歪,什么信息都能看到,可是一嵌入原生app中,瞬间就熄火了,啥也看不到了,不知道为什么,反正就是 ...

  4. Android原生同步登录状态到H5网页避免二次登录

    本文解决的问题是目前流行的 Android/IOS 原生应用内嵌 WebView 网页时,原生与H5页面登录状态的同步. 大多数混合开发应用的登录都是在原生页面中,这就牵扯到一个问题,如何把登录状态传 ...

  5. H5页面测试总结

    前言 在最近几个项目中,小编接触了较多关于H5页面的测试,H5页面的测试除了业务逻辑功能测试外,其他部分的测试方法基本是可以通用的,在此对H5页面的一些通用测试方法进行总结分享给大家. H5页面介绍 ...

  6. 本地调试H5页面

    摘要 详细讲述微信H5页面调试(安装在安卓或iOS手机上的),钉钉内H5页面的调试,QQ.微博以及各浏览器上H5页面的调试方法 背景 大学毕业快要一年了,用leader的话说我也是有一年开发经验的前端 ...

  7. A4纸网页打印 html网页页面的宽度设置成多少

    A4纸竖向打印,html网页页面的宽度设置成多少?这个问题是我们大家所疑惑的,于是网上搜集整理下,希望可以帮助你们 最近开发项目时遇到了网页打印的问题,这是问题之二,打印宽度设置 在公制长度单位与屏幕 ...

  8. 使用jqPrint.js调用浏览器打印界面,打印网页中的某一部分该部分含有ECharts图表

    1.准备好js文件(我用的是谷歌浏览器) 这个文件是为了防止你的jQuery版本过高而不适配的问题 这是调用浏览器打印的js插件 2.引入js文件 <script src="js/jq ...

  9. H5页面在微信中禁止下拉露出网页

    H5页面在微信中禁止默认事件的执行,js添加代码 $(function () { /************微信h5页面禁止下拉露出网页来**************/ $('body').on('t ...

随机推荐

  1. @vue/cli 构建得项目eslint配置2

    使用ESLint+Prettier来统一前端代码风格 加分号还是不加分号?tab还是空格?你还在为代码风格与同事争论得面红耳赤吗? 正文之前,先看个段子放松一下: 去死吧!你这个异教徒! 想起自己刚入 ...

  2. ABP框架是怎么一回事呢?

    ABP(ASP.NET Boilerplate['bɔɪlɚplet]:样板文件),就是一套基于.Net开源框架,官方地址为:https://aspnetboilerplate.com/ , 在这个地 ...

  3. CNN 模型压缩与加速算法综述

    本文由云+社区发表 导语:卷积神经网络日益增长的深度和尺寸为深度学习在移动端的部署带来了巨大的挑战,CNN模型压缩与加速成为了学术界和工业界都重点关注的研究领域之一. 前言 自从AlexNet一举夺得 ...

  4. eclipse中打断点debug无效

    今天在测试的时候,发现在eclipse中打了断点,debug居然无效.结果是因为我无意开启了另一个功能,Run-->Skip All Breakpoints (忽略所有的断点) 快捷键:Ctrl ...

  5. Mysql加锁过程详解(7)-初步理解MySQL的gap锁

    Mysql加锁过程详解(1)-基本知识 Mysql加锁过程详解(2)-关于mysql 幻读理解 Mysql加锁过程详解(3)-关于mysql 幻读理解 Mysql加锁过程详解(4)-select fo ...

  6. MySQL系列详解六:MySQL主从复制/半同步演示-技术流ken

    前言 随着技术的发展,在实际的生产环境中,由单台MySQL数据库服务器不能满足实际的需求.此时数据库集群就很好的解决了这个问题了.采用MySQL分布式集群,能够搭建一个高并发.负载均衡的集群服务器.在 ...

  7. word2vec初探

    在自然语言处理入门里我们提到了词向量的概念,tf-idf的概念,并且在实际的影评正负面预测项目中使用了tf-idf,取得了还算不错的效果.这一篇,我们来尝试一下使用来自google的大名鼎鼎的word ...

  8. MySQL行转列

    IF(expr1,expr2,expr3) 如果 expr1 是TRUE (expr1 <> 0 and expr1 <> NULL),则 IF()的返回值为expr2; 否则 ...

  9. Sklearn中二分类问题的交叉熵计算

    二分类问题的交叉熵   在二分类问题中,损失函数(loss function)为交叉熵(cross entropy)损失函数.对于样本点(x,y)来说,y是真实的标签,在二分类问题中,其取值只可能为集 ...

  10. 在CentOS中部署.Net Core2.1网站

    作为一个刚接触linux的新手,在安装环境的时候,折腾了不少时间,写下一篇总结帖,帮助下新人吧~ 做完后再回来看步骤,也很简单,也就以下几步: 1.安装.Net Core环境 2.安装nginx实现端 ...