新书推介:《语义网技术体系》
作者:瞿裕忠,胡伟,程龚
   XML论坛     W3CHINA.ORG讨论区     计算机科学论坛     SOAChina论坛     Blog     开放翻译计划     新浪微博  
 
  • 首页
  • 登录
  • 注册
  • 软件下载
  • 资料下载
  • 核心成员
  • 帮助
  •   Add to Google

    >> XML与各种文件格式的相互转换及相关工具。 word to xml, xml to word, html to xml, xml to pdf,
    csv to xml, rtf to xml, text to xml, xml to text, xls to xml, xml to xls
    FOP
    [返回] 中文XML论坛 - 专业的XML技术讨论区XML.ORG.CN讨论区 - XML技术『 WORD to XML, HTML to XML 』 → 我写了个,生成pdf报表的方法,可是cell中的字段老是折行,各位大侠有没有办法解决下 查看新帖用户列表

      发表一个新主题  发表一个新投票  回复主题  (订阅本版) 您是本帖的第 6278 个阅读者浏览上一篇主题  刷新本主题   树形显示贴子 浏览下一篇主题
     * 贴子主题: 我写了个,生成pdf报表的方法,可是cell中的字段老是折行,各位大侠有没有办法解决下 举报  打印  推荐  IE收藏夹 
       本主题类别:     
     cydcom 帅哥哟,离线,有人找我吗?
      
      
      等级:大一新生
      文章:1
      积分:56
      门派:XML.ORG.CN
      注册:2005/9/26

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给cydcom发送一个短消息 把cydcom加入好友 查看cydcom的个人资料 搜索cydcom在『 WORD to XML, HTML to XML 』的所有贴子 引用回复这个贴子 回复这个贴子 查看cydcom的博客楼主
    发贴心情 我写了个,生成pdf报表的方法,可是cell中的字段老是折行,各位大侠有没有办法解决下

    我写了个,生成pdf报表的方法,可是cell中的字段老是折行,各位大侠有没有办法解决下
    /**
    * 文件名称: 
    * 公司:  Butone
    * 作者:  cyd
    * 版本号:  Copyright (c) 2005 v 2.0
    * 日期:  2005-9-26
    * 更新:
    */
    package com.butone.pdf.util;

    import java.awt.Color;
    import java.io.*;
    import java.util.Hashtable;
    import java.util.Vector;
    import javax.servlet.*;
    import javax.servlet.http.*;
    import com.lowagie.text.*;
    import com.lowagie.text.pdf.*;

    public class ExportPDF {

     public void exportNew(HttpServletResponse response, Vector vc, String tableName, String[] listName, String[] listName_Name) throws IOException {
      Document doc = new Document(PageSize.A2, 2, 2, 2, 2);

      try {
       ByteArrayOutputStream buffer = new ByteArrayOutputStream();
       PdfWriter writer = PdfWriter.getInstance(doc, buffer);
       //定义输出位置并把文档对象装入输出对象中

       BaseFont bfChinese = BaseFont.createFont("STSong-Light", "UniGB-UCS2-H", BaseFont.EMBEDDED);
       Font FontChinese = new Font(bfChinese, 32, Font.BOLD);
       String title = "我爱喝咖啡";
       if (tableName != null && !tableName.equals(""))
        title = tableName;
       Paragraph t = new Paragraph(title, FontChinese);
       //表名居中
       t.setAlignment(Paragraph.ALIGN_CENTER);
       //****
       //定义一个表格
       Table table = new Table(listName_Name.length , vc.size());
       //设置表格边框
       table.setBorderWidth(0);
       //table.setCellpadding(5);
       //table.setCellspacing(5);

       for (int j = 0; j < listName_Name.length; j++) {
        //设置中文字体
        BaseFont _bfChinese = BaseFont.createFont("STSong-Light", "UniGB-UCS2-H", BaseFont.NOT_EMBEDDED);
        Font _FontChinese = new Font(_bfChinese, 24, Font.NORMAL);
        String list_Name = listName_Name[j];
        Paragraph par = new Paragraph(list_Name, _FontChinese);
        par.setAlignment(Paragraph.ALIGN_CENTER);
        par.setAlignment(Paragraph.CHUNK);
        //建立各cell将对象放入
        Cell cell = new Cell(par);
        cell.setHeader(true);
        //分列
        cell.setColspan(1);
        cell.setRowspan(1);
        cell.setNoWrap(true);
        cell.setBackgroundColor(Color.cyan);
        table.addCell(cell);
        table.setCellsFitPage(true);
       }
       for (int i = 0; i < vc.size(); i++) {
        Hashtable ht = (Hashtable) vc.get(i);
        for (int j = 0; j < listName_Name.length; j++) {
         BaseFont _bfChinese = BaseFont.createFont("STSong-Light", "UniGB-UCS2-H", BaseFont.NOT_EMBEDDED);
         Font _FontChinese = new Font(_bfChinese, 18, Font.NORMAL);
         String list_col = (String) ht.get(listName[j]);
         String list_col_type = (String) ht.get(listName[j]+"_TYPE");
         Paragraph par = new Paragraph(list_col, _FontChinese);
         //判断是数字还是字符
         if(list_col_type.equals("NUMBER"))
          par.setAlignment(Paragraph.ALIGN_LEFT);
         else
          par.setAlignment(Paragraph.ALIGN_CENTER);
         Cell cell = new Cell(par);
         //分列
         cell.setColspan(1);
         cell.setRowspan(1);
         cell.setNoWrap(true);
         //cell.setMarkupAttribute("class", "line2");
         //cell.setHorizontalAlignment(cell.ALIGN_RIGHT);
         table.addCell(cell);
         table.setCellsFitPage(true);
        }
       }
       //*****

       //打开文档对象
       doc.open();
       doc.add(t);
       doc.add(table);

       //  关闭文档对象,释放资源

       doc.close();
       DataOutput output = new DataOutputStream(response.getOutputStream());
       byte[] bytes = buffer.toByteArray();
       response.setContentLength(bytes.length);
       for (int i = 0; i < bytes.length; i++) {
        output.writeByte(bytes[i]);
       }

      } catch (FileNotFoundException e) {

       e.printStackTrace();

      } catch (DocumentException e) {

       e.printStackTrace();

      }

     }
    }


       收藏   分享  
    顶(0)
      




    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2005/9/27 17:16:00
     
     GoogleAdSense
      
      
      等级:大一新生
      文章:1
      积分:50
      门派:无门无派
      院校:未填写
      注册:2007-01-01
    给Google AdSense发送一个短消息 把Google AdSense加入好友 查看Google AdSense的个人资料 搜索Google AdSense在『 WORD to XML, HTML to XML 』的所有贴子 访问Google AdSense的主页 引用回复这个贴子 回复这个贴子 查看Google AdSense的博客广告
    2024/12/27 13:23:22

    本主题贴数1,分页: [1]

    管理选项修改tag | 锁定 | 解锁 | 提升 | 删除 | 移动 | 固顶 | 总固顶 | 奖励 | 惩罚 | 发布公告
    W3C Contributing Supporter! W 3 C h i n a ( since 2003 ) 旗 下 站 点
    苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
    46.875ms