1.使用javascript
<html>
<head>
<title>看看</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<!--media=print 这个属性可以在打印时有效-->
<style media=print>
.Noprint{display:none;}
.PageNext{page-break-after: always;}
</style>
<style>
.tdp{border-bottom: 1 solid #000000; border-left: 1 solid #000000; border-right: 0 solid #ffffff; border-top: 0 solid #ffffff; }
.tdp2{border-bottom: 1 solid #000000; border-left: 0 solid #000000; border-right: 0 solid #ffffff; border-top: 0 solid #ffffff; }
.tabp{border-color: #000000 #000000 #000000 #000000;border-style: solid; border-top-width: 2px; border-right-width: 2px;border-bottom-width: 1px; border-left-width: 1px;}
.NOPRINT{font-family: "宋体"; font-size: 9pt; }
</style>
</head>
<body >
<center class="Noprint" >
<p><OBJECT id=WebBrowser classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 height=0 width=0></OBJECT>
<input type=button value=打印 οnclick=document.all.WebBrowser.ExecWB(6,1)><input type=button value=直接打印 οnclick=document.all.WebBrowser.ExecWB(6,6)><input type=button value=页面设置 οnclick=document.all.WebBrowser.ExecWB(8,1)></p>
<p> <input type=button value=打印预览 οnclick=document.all.WebBrowser.ExecWB(7,1)><br/></p>
<hr align="center" width="90%" size="1" noshade>
</center>
<center>dddd</center></br>
<table width="90%" border="0" align="center" cellpadding="0" cellspacing="0" class="tabp">
<tr height="50">
<td colspan="2" class="tdp">第1页</td>
<td colspan="1" class="tdp">
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr><td class="tdp2">ssd1</td></tr>
<tr><td >ssd2</td></tr>
</table>
</td>
</tr>
<tr>
<td width="29%" class="tdp"> </td>
<td width="28%" class="tdp"> </td>
<td width="43%" class="tdp"> </td>
</tr>
<tr>
<td colspan="3" class="tdp"> </td>
</tr>
<tr>
<td colspan="3" class="tdp">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="50%" height="200" class="tdp" valign="top"><p>这样的报表</p></td>
<td> </td>
</tr>
</table>
</td>
</tr>
</table>
<hr align="center" width="90%" size="1" noshade class="NOPRINT" > <!--分页-->
<div class="PageNext"></div>
<table width="90%" border="0" align="center" cellpadding="2" cellspacing="0" class="tabp">
<tr>
<td class="tdp">第2页</td>
</tr>
<tr>
<td class="tdp">看到分页了吧</td>
</tr>
<tr>
<td class="tdp"> </td>
</tr>
<tr>
<td class="tdp"> </td>
</tr>
<tr> <td class="tdp">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="50%" class="tdp"><p>这样的报表</p> <p>对一般的要求就够了。</p></td> <td> </td>
</tr>
</table>
</td>
</tr>
</table>
<hr align="center" width="90%" size="1" noshade class="NOPRINT" > <!--分页-->
<div class="PageNext"></div> <table width="90%" border="0" align="center" cellpadding="2" cellspacing="0" class="tabp">
<tr>
<td colspan="3" class="tdp">第1页</td>
</tr>
<tr>
<td width="29%" class="tdp"> </td>
<td width="28%" class="tdp"> </td>
<td width="43%" class="tdp"> </td>
</tr>
<tr>
<td colspan="3" class="tdp"> </td>
</tr> <tr>
<td colspan="3" class="tdp">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="50%" class="tdp"><p>这样的报表</p> <p>对一般的要求就够了</p></td>
<td> </td>
</tr>
</table>
</td>
</tr>
</table>
<hr align="center" width="90%" size="1" noshade class="NOPRINT" > <!--分页-->
<div class="PageNext"></div>
<table width="90%" border="0" align="center" cellpadding="2" cellspacing="0" class="tabp">
<tr>
<td class="tdp">第2页</td>
</tr>
<tr>
<td class="tdp">看到分页了吧</td>
</tr>
<tr>
<td class="tdp"> </td>
</tr>
<tr>
<td class="tdp"> </td>
</tr> <tr>
<td class="tdp">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="50%" class="tdp"><p>这样的报表</p> <p>对一般的要求就够了。</p></td>
<td> </td>
</tr>
</table>
</td> </tr>
</table>
</body>
</html>
2.使用itext导出为word格式
void createCell(String content,int row,int col)
{
try{
Paragraph p = new Paragraph(content,FontChinese);
p.setAlignment(Element.ALIGN_CENTER); //设置段落为居中对齐
Cell c2=new Cell(p);
c2.setVerticalAlignment(Element.ALIGN_CENTER); //设置表格中的内容为垂直居中
c2.setHeader(false);
c2.setColspan(col);
c2.setRowspan(row);
c2.setUseBorderPadding(true);
t.addCell(c2);
}catch (Exception e) {
System.out.println("createCell"+content);
e.printStackTrace();
}
}
void createCell(String content,int row,int col,String orient_x,String orient_y)
{
try{
Paragraph p = new Paragraph(content,FontChinese);
if(orient_x == LEFT)
p.setAlignment(Element.ALIGN_LEFT); //设置段落为左对齐
else if(orient_x == RIGHT)
p.setAlignment(Element.ALIGN_RIGHT); //设置段落为右对齐
else if(orient_x == CENTER)
p.setAlignment(Element.ALIGN_CENTER); //设置段落为居中对齐
Cell c2=new Cell(p);
c2.setHeader(false);
c2.setColspan(col);
c2.setRowspan(row);
c2.setUseBorderPadding(true);
if(orient_y == TOP)
c2.setVerticalAlignment(Element.ALIGN_TOP); //设置表格中的内容为垂直居上
else if(orient_y == CENTER)
c2.setVerticalAlignment(Element.ALIGN_CENTER); //设置表格中的内容为垂直居中
else if(orient_y == BOTTOM)
c2.setVerticalAlignment(Element.ALIGN_BOTTOM); //设置表格中的内容为垂直居下
t.addCell(c2);
}catch (Exception e) {
System.out.println("createCell"+content);
e.printStackTrace();
}
}
创建
void go()
{
// 得到保存路径
// FileDialog sd = new FileDialog(new Shell(Display.getCurrent()));
// sd.setFilterExtensions(new String[] { ".doc" });
Date d=new Date();
final String path = "D:\\"+report.getReportTag()+".doc";
System.out.println(path);
try{
Document document = new Document(PageSize.A4);
document.addTitle("Title");
document.addHeader("header","Header");
// document.setMargins(20, 0, 10, 10);
BaseFont bf = BaseFont.createFont("STSong-Light","UniGB-UCS2-H",BaseFont.NOT_EMBEDDED);
FontChinese = new Font(bf, 12, Font.NORMAL,textColor);
FontHeader = new Font(bf,18,Font.BOLD,textColor);
RtfWriter2.getInstance(document, new FileOutputStream(path));
document.open();
// add a word
// document.add(new Paragraph("exportTitle",FontChinese));
// add a table
t=new Table(8);
t.setBorderColor(borderColor);//边界颜色
t.setPadding(0);
t.setSpacing(0);//单元格的边界
t.setBorderWidth(2);//table的边界
//float[] width = {0.17f,0.33f,0.17f,0.33f};
float[] width = {6.25f,10.75f,13f,20f,6.25f,10.75f,13f,20f};
t.setWidths(width); //设置列宽度比例
Paragraph p = new Paragraph("软件问题报告单",FontHeader);
p.setAlignment(Element.ALIGN_CENTER); //设置段落为居中对齐
Cell c=new Cell(p);
c.setVerticalAlignment(Element.ALIGN_CENTER); //设置表格中的内容为垂直居中
c.setHeader(false);
c.setColspan(4);
c.setRowspan(4);
c.setBackgroundColor(headColor);
c.setUseBorderPadding(true);
t.addCell(c);
createCell("软件名称",2,2);
createCell()//......
document.add(t);
document.close();
}catch (Exception e) {
e.printStackTrace();
}
}