通常打印报表的时候,需要在服务器端生成PDF, Excel, Word 或者其他文件后,下载到本地后打印。可以参考这里:
Java操作PDF之iText超入门 :
http://rensanning.iteye.com/blog/1538689
Java读写Excel之POI超入门 :
http://rensanning.iteye.com/blog/1538591
而如今随着浏览器faster, stronger, better, smarter,完全可以通过HTML&CSS的方式提供报表打印。
(一)打印Web Page
基本的HTML打印知识
1)Media types
media属性
<link rel="stylesheet" type="text/css" href="print.css" media="print">
<style type="text/css" media="print"></style>
@media规则
@media print {
body { margin: 0; background-image: none; font-size: 12pt; }
}
2) Print Style Sheets
隐藏导航(navigation/sidebar)
#nav, #sidebar { display: none; }
隐藏不必要的内容
#comments { display: none; }
加宽Body区域
#content { width: auto; border: 0; margin: 0 5%; padding: 0; float: none !important; }
设置背景,文字颜色
body { background: white; } #content { background: transparent; }
#author { color: #111; }
显示链接URL
a:link:after { content: " (" attr(href) ") "; font-size: 90%; }
a[href^="/"]:after { content: " (http://www.sample.com" attr(href) ") "; }
区分链接和一般文字
a:link { font-weight: bold; text-decoration: underline; color: #06c; }
设置字体
body { font-family: Georgia, ‘Times New Roman’, serif; font-size: 12pt; }
打印提示
@media screen { #printMsg { display: none; } }
@media print { #printMsg { display: block; } }
分页显示
.sheet { page-break-after: always; }
表格边框
table { border: 1px solid black; }
(二)打印设置
设置纸张大小
@page { size: A4 }
@page { size: 210mm 297mm }
设置纸张方向
@page { size: A4 landscape }
设置边距
@page { size: A4; margin: 10mm; }
@page :left {
margin-left: 4cm;
margin-right: 3cm;
}
@page :right {
margin-left: 3cm;
margin-right: 4cm;
}
@page :first {
margin-top: 10cm
}
Chrome需要特殊设置
@page { size: A4; margin: 10mm; }
@media print {
body {
width: 190mm; /* needed for Chrome */
}
}
输出页码
body {
counter-reset: sheet;
}
.sheet::after {
position: absolute;
bottom: 0;
right: 0;
counter-increment: sheet;
content: "Page " counter(sheet);
}
(三)浏览器设置
各浏览器设置不同,基本都默认输出:标题、URL、页码、打印时间等,比如以下为Firefox的打印设置:
参考:
http://www.smashingmagazine.com/2007/02/printing-the-web-solutions-and-techniques/
http://qiita.com/cognitom/items/d39d5f19054c8c8fd592
- 大小: 38.9 KB
- 大小: 28.8 KB
分享到:
相关推荐
()">打印报表 <!-- 表格内容 --> ... function printReport() { var iframe = document.createElement('iframe'); iframe.srcdoc = document.getElementById('printArea').innerHTML; iframe....
5. **CSS样式与JavaScript**:HTML报表可能包含复杂的CSS样式和JavaScript脚本来实现动态效果和数据交互。WebBrowser控件支持大部分现代浏览器的CSS样式和JavaScript,使得HTML报表在桌面应用中也能有良好的视觉和...
Web打印报表控件Lodop是一款专为网页打印设计的组件,它提供了强大的网页打印功能,使得用户在浏览器中即可方便地完成各种复杂的打印任务。Lodop以其简单易用和高效实用的特点,在IT行业内获得了广泛的应用。下面将...
总的来说,Web报表打印是现代Web应用中的一个重要组成部分,它要求开发者不仅要掌握HTML、CSS和JavaScript等前端技术,还要理解打印相关的规范和用户需求,以提供高效、便捷且用户友好的打印体验。
### Java Web开发技术方案宝典-报表打印 #### 6.1 报表打印技术 ...无论是基础的JavaScript + CSS打印,还是更高级的Word/Excel打印,甚至是自定义的报表解决方案,都有助于满足不同场景下的需求。
可以使用专门的库,如`html2canvas`和`jspdf`,它们能够将HTML转换为图像或PDF,从而实现更高级的打印效果,包括多页报表和自定义布局。 总结来说,Web打印的解决方案涉及到JavaScript的DOM操作、ActiveX对象的利用...
### 基于BS结构的Web打印报表设计 随着信息技术的发展和互联网的普及,B/S(Browser/Server,浏览器/服务器)架构的应用程序已经成为企业信息化的重要组成部分。然而,在B/S架构下实现复杂报表的打印功能一直是个...
因此,通常会创建一个专用于打印的CSS样式表,通过`@media print`规则来调整打印样式。 - 另外,还可以使用第三方库如`printThis`来提供更高级的打印选项,如隐藏某些元素、自定义页眉页脚等。 5. **安全性与兼容...
3. 打印支持:通过CSS媒体查询,为打印场景定制专门的样式,确保打印出来的报表整洁清晰。 五、报表导出 1. PDF导出:可以使用iText、Flying Saucer等库将HTML页面转换为PDF格式,方便用户离线查看和打印。 2. ...
本文将详细探讨如何利用C# ASP.NET处理HTML表格数据,并将其转换为PDF格式,以便进行Web打印和生成PDF报表,以及相关的DLL库的使用。 首先,我们需要了解HTML表格。HTML表格是网页中组织数据的标准方式,它们由`...
使用Bootstrap、Materialize CSS等前端框架,可以实现响应式布局,确保报表在不同设备上都能良好显示。 10. **安全性与权限控制**: 在企业级应用中,报表数据的访问和打印通常需要权限控制。Spring Security或...
为了使报表能够在浏览器中打印,可以利用CSS的`media`属性来指定打印时的样式。例如,提供的代码中使用了以下样式: ```css <!-- media=print --> .Noprint { display: none; } .PageNext { page-break-after: ...
在IT行业中,生成可打印报表并打印条形码是一项常见的需求,尤其在物流、零售、库存管理等领域。本文将深入探讨这一主题,介绍如何利用编程技术实现这一功能,并结合提供的"WebSite2"压缩包文件,理解其可能包含的...
本项目“echart报表加打印”旨在提供一个简单的ECharts报表示例,并集成打印功能,使得用户能够方便地查看和打印图表数据。下面我们将深入探讨ECharts的核心特性、报表设计原则以及如何实现打印功能。 1. **ECharts...
本文将深入探讨如何使用JavaScript实现打印报表功能,包括与Excel和Word的交互,帮助开发者从初级到高级逐步提升技能。 首先,我们要理解JavaScript在报表打印中的角色。在网页端,JavaScript可以用于控制页面元素...
Web打印方法是将这些本地报表在网页环境中进行打印的功能,这对于那些需要从Web应用中导出或打印报表的用户来说非常实用。下面将详细介绍微软本地报表Web打印的方法及其相关知识点。 首先,我们需要了解微软本地...
这种类型的工具通常会抓取网页的HTML、CSS和JavaScript代码,然后根据这些代码重构一个PDF版本。转换过程中可能会考虑到页面的响应式设计,以确保在不同屏幕尺寸下的布局都能正确显示。 "CuteWriter.exe"这个名字...
这些文件可能包含了报表的HTML结构、数据绑定逻辑、打印事件处理以及可能的CSS样式定义。 总结一下,这个示例涵盖了以下知识点: 1. ASP.NET的HTML Table数据展示 2. 数据源的处理与绑定,可能使用ADO.NET 3. ...
综上所述,利用XML实现通用WEB报表打印的过程主要包括:定义XML结构(通过DTD或XML Schema),编写XML数据,使用XML解析器读取数据,应用XSLT转换数据为HTML,以及通过JavaScript和CSS增强用户体验。这样的方法使得...
最后,调用浏览器打印功能允许用户直接打印报表,无需先保存或下载。这通常涉及到HTML页面的CSS样式调整,确保打印出来的内容格式正确。SpringMVC可以触发浏览器的打印事件,用户可以在弹出的打印对话框中进行设置,...