网站首页
JSP空间
动态资讯
开源项目
技术文档
资源下载
J2EE资源
客户论坛
在线支付
 
  技术文档>>JAVA>>新手入门>>基础入门>查看文档  
  [java100例]039、生成pdf文件     
  文章作者:未知  文章来源:水木森林  
  查看:104次  录入:管理员--2007-11-17  
 

import com.lowagie.text.*;
import com.lowagie.text.pdf.*;
import java.io.*;
import java.util.*;
import java.awt.color;


/**
 * <p>title: 生成pdf文件</p>
 * <p>description: 本实例通过使用itext包生成一个表格的pdf文件</p>
 * <p>copyright: copyright (c) 2003</p>
 * <p>filename: mypdf.java</p>
 * @version 1.0
 */
public class mypdf{
/**
 *<br>方法说明:写pdf文件
 *<br>输入参数:
 *<br>返回类型:
 */
  public void write(){
   try{
     document document=new document(pagesize.a4, 50, 50, 100, 50);
     rectangle pagerect=document.getpagesize();
     pdfwriter.getinstance(document, new fileoutputstream("tables.pdf"));
     //创建汉字字体
     basefont bfsong = basefont.createfont("stsong-light", "unigb-ucs2-h", false);
     font fontsong = new font(bfsong, 10, font.normal);
     // 增加一个水印
     try {
         watermark watermark = new watermark(image.getinstance("test.jpg"), pagerect.left()+50,pagerect.top()-85);
         watermark.scalepercent(50);
         document.add(watermark);
     }catch(exception e) {
    system.err.println("请查看文件“test.jpg”是否在正确的位置?");
     }
    
      // 为页增加页头信息
     headerfooter header = new headerfooter(new phrase("java实例一百例",fontsong), false);
     header.setborder(2);
     header.setalignment(element.align_right);
     document.setheader(header);
    
   // 为页增加页脚信息
     headerfooter footer = new headerfooter(new phrase("第 ",fontsong),new phrase(" 页",fontsong));
     footer.setalignment(element.align_center);
     footer.setborder(1);
     document.setfooter(footer);


      // 打开文档
     document.open();
     //构造表格
     table table = new table(4);
     table.setdefaultverticalalignment(element.align_middle);
     table.setborder(rectangle.no_border);
     int hws[] = {10, 20, 10, 20,};
     table.setwidths(hws);
     table.setwidth(100);
     //表头信息
     cell cellmain = new cell(new phrase("用户信息",new font(bfsong, 10, font.bold,new color(0,0,255))));
     cellmain.sethorizontalalignment(element.align_center);
     cellmain.setcolspan(4);
     cellmain.setborder(rectangle.no_border);
     cellmain.setbackgroundcolor(new color(0xc0, 0xc0, 0xc0));
     table.addcell(cellmain);
      //分表头信息
     cell cellleft= new cell(new phrase("收货人信息",new font(bfsong, 10, font.italic,new color(0,0,255))));
     cellleft.setcolspan(2);
     cellleft.sethorizontalalignment(element.align_center);
     table.addcell(cellleft);
     cell cellright= new cell(new phrase("订货人信息",new font(bfsong, 10, font.italic,new color(0,0,255))));
     cellright.setcolspan(2);
     cellright.sethorizontalalignment(element.align_center);
     table.addcell(cellright);
    
     //收货和订货人信息,表体内容
     table.addcell(new phrase("姓名",fontsong));
     table.addcell(new phrase("张三",fontsong));
     table.addcell(new phrase("姓名",fontsong));
     table.addcell(new phrase("李四",fontsong));


     table.addcell(new phrase("电话",fontsong));
     table.addcell(new phrase("23456789",fontsong));
     table.addcell(new phrase("电话",fontsong));
     table.addcell(new phrase("9876543",fontsong));


     table.addcell(new phrase("邮编",fontsong));
     table.addcell(new phrase("100002",fontsong));
     table.addcell(new phrase("邮编",fontsong));
     table.addcell(new phrase("200001",fontsong));


     table.addcell(new phrase("地址",fontsong));
     table.addcell(new phrase("北京西城区xx路xx号",fontsong));
     table.addcell(new phrase("地址",fontsong));
     table.addcell(new phrase("上海陆家嘴区xx路xx号",fontsong));


     table.addcell(new phrase("电子邮件",fontsong));
     table.addcell(new phrase("zh_san@hotmail.com",fontsong));
     table.addcell(new phrase("电子邮件",fontsong));
     table.addcell(new phrase("li_si@hotmail.com",fontsong));
     //将表格添加到文本中
     document.add(table);
     //关闭文本,释放资源
     document.close();
    
   }catch(exception e){
     system.out.println(e);  
   }
  }
/**
 *<br>方法说明:主方法
 *<br>输入参数:
 *<br>返回类型:
 */
  public static void main(string[] arg){
    mypdf p = new mypdf();
    p.write();
  }
}

 
 
上一篇: hibernate + proxool配置    下一篇: [java100例]040、压缩和解压文件
  相关文档
java中数组之间的比较 11-17
scsa exam questions 06/10/02 11-17
java工具包的安装,配置和使用 11-17
scjp braindumps 05/15/2002 11-17
新手指路灯-jsp程序员成长之路 11-17
使用awt 将graphics对象转换为image对象 11-17
用java编写简单的udp网络通信程序 11-17
在java中实现c++代码的复用 11-17
java中的排序和搜索 11-17
下一波gui设计-matisse和netbeans 11-17
j2ee基础--步入j2ee架构和过程 11-16
产生随机数方法不能乱用 11-17
利用java做一个简单的计算器 11-17
使用java swing创建一个xml编辑器之三 11-17
beanshell 在人工测试与管理之中的应用 11-16
使用消息驱动beans(2) 11-17
jsp的中文处理解决方法 11-17
springmvcframework深入总体分析 11-17
用jpda轻松调试java代码 11-17
java基础:java代码编写过程的30条建议 11-29
返回首页 | 关于我们 | J网章程 | JSP空间合租 | 客服中心 | 免责声明 | 常见问题 | 参观机房
本站主机空间代理至厦门市华众网络科技有限公司
《中华人民共和国增值电信业务经营许可证》
编号:闽B2-20050079
@2005-2008福建JSP技术网 版权所有 闽ICP备05000928号
技术电话:13616026886
邮箱:admin@fjjsp.com 站长QQ,点击这里给我发消息