web打印的几种方法(2023)

文章介绍了几种Web打印的方法,包括使用JavaScript的window.print()函数,该方法在处理页眉页脚控制上存在局限;Jquery打印插件,通过创建隐藏iframe来实现更精确的打印控制;HttpPrinter控件,提供打印预览和自定义选项;以及6612345免费网页打印浏览器,支持多种复杂打印需求。文章强调选择适合的打印实现取决于具体需求。
摘要由CSDN通过智能技术生成

在工作中出现web打印的情况是非常多的,其实这也是一个比较烦人的问题,这篇博客整理一下关于Web打印的一些方法或者方式。

1. window.print()

这个方法是用来打印网页的,页面上的其他的元素也会被打印处理,在打印的时候页眉页脚是不太好控制的。

所以如果使用这种方法的话最好将结果放到两个注释中间,之后通过JS来实现打印区域的功能。

具体做法:
<!--startprint-->
     <div align="center">
         <!--省略部分代码-->
     </div>
  <!--endprint-->
 
bdhtml=window.document.body.innerHTML;
sprnstr="<!--startprint-->";
eprnstr="<!--endprint-->";
prnhtml=bdhtml.substr(bdhtml.indexOf(sprnstr)+17);
prnhtml=prnhtml.substring(0,prnhtml.indexOf(eprnstr));
window.document.body.innerHTML=prnhtml;
window.print();


 

特别注意:使用window.print方法是不能够打印IE浏览器中的移动或者旋转的动画的,但是在非IE浏览器中是可以支持的。


2. Jquery打印

下面一个是用Jquery框架写的一个web打印控件的功能。

代码如下:

(function ($) {
    var printAreaCount = 0;
    $.fn.printArea = function () {
        var ele = $(this);
        var idPrefix = "printArea_";
        removePrintArea(idPrefix + printAreaCount);
        printAreaCount++;
        var iframeId = idPrefix + printAreaCount;
        var iframeStyle = 'position:absolute;width:0px;height:0px;left:-500px;top:-500px;';
        iframe = document.createElement('IFRAME');
        $(iframe).attr({
            style: iframeStyle,
            id: iframeId
        });
        document.body.appendChild(iframe);
        var doc = iframe.contentWindow.document;
        $(document).find("link").filter(function () {
            return $(this).attr("rel").toLowerCase() == "stylesheet";
        }).each(
                function () {
                    doc.write('<link type="text/css" rel="stylesheet" href="'
                            + $(this).attr("href") + '" >');
                });
        doc.write('<div class="' + $(ele).attr("class") + '">' + $(ele).html()
                + '</div>');
        doc.close();
        var frameWindow = iframe.contentWindow;
        frameWindow.close();
        frameWindow.focus();
        frameWindow.print();
    }
    var removePrintArea = function (id) {
        $("iframe#" + id).remove();
    };
})(jQuery);
 
 
<input type="button" id="btnPrint" value="打印"/>
<div id="printContent">要打印的内容区域<div>
 
<script type="text/javascript">
$(function(){
        $("#btnPrint").click(function(){ $("#printContent").printArea(); });
});
</script>

3. HttpPrinter控件

HttpPrinter打印控件,界面大方、使用简单、但无签名,支持打印预览、直接打印,可设置页眉、页脚、页边距、打印份数、纸张大小等信息。 


4. 6612345免费网页打印浏览器- 一个集网页打印 网页拍照 报表打印 串口读取 为一体的 超级浏览器
 
官方的介绍是这样的:

支持如下功能特点:

1. 支持网页静默打印,只要一句js即可;

2. 拖拽即可完成设计,支持 fastreport, reportmachine, gridreport

3. 强大的报表功能,管它什么报表, 交叉的,嵌套的,还是二维码,图片等等,都支持.

4. 打印机:只要是能用的打印机,都支持,针式打印机、激光打印机、小票打印机,证卡打印机等等,都不在话下,而且当有多个打印机时可以指定打印机;

5. 支持web拍照.

6. 支持读取身份证设备 ( 普天 新中新 神思 精伦 ).

7. 支持pdf静默打印

8. 支持图片打印

9. 支持串口通讯

10. 多语言支持:中文简体,中文繁体,英语,法语,德语,意大利语,日语,韩语,葡萄牙语,俄语,西班牙语.


其实关于打印控件还有很多,找到自己最合适的才是硬道理,如果还有更多的web打印实现方法,可以给我留言。
 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: FastReport.NET Web打印是一款基于FastReport.NET报表引擎的网页打印解决方案。它提供了一个简单而强大的工具,允许开发人员直接在Web应用程序中生成和打印报表。 FastReport.NET Web打印有以下几个主要特点: 1. 强大的报表设计工具:FastReport.NET提供了一个直观、易于使用的报表设计器,开发人员可以通过拖放方式添加数据和控件,自定义报表样式和布局,轻松设计出符合需求的报表。 2. 多种数据源支持:FastReport.NET Web打印支持多种数据源,包括数据库、XML文件、JSON数据等,可以方便地从不同来源获取数据进行报表生成。 3. 支持多种输出格式:FastReport.NET Web打印支持多种输出格式,包括PDF、Excel、Word、图片等,用户可以将报表输出为多种常见的文件格式,方便保存和分享。 4. 可定制的报表模板:开发人员可以根据需求创建自定义的报表模板,包括添加公司Logo、设置页眉页脚、调整字体颜色、样式等,实现报表的个性化定制。 5. 跨平台支持:FastReport.NET Web打印可以在各种操作系统和浏览器上运行,包括Windows、Linux、Mac等,兼容主流的浏览器,如Chrome、Firefox、IE等。 6. 安全性保障:FastReport.NET Web打印提供了安全的报表导出和打印功能,可以通过权限控制、加密处理等手段来保障报表数据的安全性。 总之,FastReport.NET Web打印是一种高效、灵活、易用的网页打印解决方案,可以帮助开发人员快速生成和打印各种类型的报表,提升工作效率,满足不同用户需求。 ### 回答2: FastReport.Net是一款优秀的报表生成工具,它不仅可以在桌面应用程序中生成报表,还可以在web应用程序中进行报表打印。 FastReport.Net Web打印功能允许我们在web浏览器中直接打印报表,而无需将报表导出为PDF或其他格式再进行打印。这样可以大大简化打印流程,节省时间和工作量。 要使用FastReport.Net进行Web打印,我们需要在web应用程序中引入FastReport.Net的相关库文件,并创建报表模板。报表模板的设计可以通过FastReport.Net提供的可视化设计器完成,也可以通过代码进行动态生成。 在Web应用程序中,我们可以通过浏览器中的打印按钮或者自定义的打印按钮来触发打印操作。当用户点击打印按钮时,FastReport.Net会将报表模板加载,并根据数据源中的数据生成报表内容。 FastReport.Net提供了丰富的打印选项,包括打印份数、纸张类型、页眉页脚、页码等。我们可以根据需要自定义这些选项,以满足打印要求。 同时,FastReport.Net还支持导出报表为PDF、Excel、Word等格式,以满足不同的使用需求。导出的报表可以方便地保存、打印或分享给其他人。 总之,FastReport.Net的Web打印功能使得在web应用程序中生成和打印报表变得简单高效。它的强大功能和简便操作为我们提供了一个便捷而强大的报表打印解决方案。 ### 回答3: FastReport.Net是一个用于创建报表的.NET框架。它具有强大的报表设计工具和丰富的功能,可以帮助开发人员快速而轻松地创建各种报表。 FastReport.Net支持Web打印的功能,可以将报表轻松地集成到Web应用程序中。用户只需要通过Web浏览器访问应用程序,就可以查看和打印报表。这为用户提供了方便和灵活的报表访问方式。 使用FastReport.Net进行Web打印非常简单。开发人员只需设计好报表并将其与Web应用程序集成,然后将报表保存为指定的格式,如PDF或HTML。当用户在Web应用程序中请求打印报表时,应用程序会动态地生成报表文件,并将其提供给用户进行打印。 通过FastReport.Net的Web打印功能,用户可以方便地打印报表,无需额外安装任何软件或工具。报表可以在任何设备上打印,包括计算机、平板电脑和手机等。 此外,FastReport.Net还提供了自定义打印设置和打印预览功能,用户可以根据自己的需求设置打印样式,并在打印之前预览报表的内容。这为用户提供了更加个性化和精确的报表打印体验。 总而言之,FastReport.Net的Web打印功能为用户提供了方便、灵活和个性化的报表打印方式。无论是开发者还是最终用户,都能够从中受益并轻松地实现报表的访问和打印
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值