主要需要实现,通过word模板对模板中的定制好的 窗口域 赋值以及图片谁有这方面的资料多谢提供

解决方案 »

  1.   

    我很久以前做过,其中也导入了图片。
    用的是veloctiy
    具体方法是:先用word制作一个模板,数据用变量代替。然后保存为网页文件(mht)。最后用velocity加入循环等操作。保存为扩展名为:vm。
    http://blog.csdn.net/myyate/archive/2008/01/17/2049701.aspx
    这是其他人的。差不多就这样的。
      

  2.   

    有没有 demo 来一个 拜谢
      

  3.   

    是用java2word做的
    也是模板
    但是你要在你模板里标注你要填写的位置
    比如 word中    姓名:张三   你要填写张三对吧
    你就在word写 姓名:${bo.name} 当然这名称你自己定义
    然后替换  ${bo.name} 为 张三  OK了
    下面是我的代码 我用到了 java反射 你程序简单的话 可以省略
    String inFile = fileUrl + "wordModel.doc";
    // 要报存的目标文件
    String tpFile = fileUrl + Date2.getDate() + Date2.getTime()
    + "wordModel.doc";
    Document doc;
    try {
    doc = new Document();
    doc.open(inFile);
    // java反射
    Class clazz = bfo.getClass();
    // Field[] fields = clazz.getDeclaredFields();// 所有属性
    Field[] fields = clazz.getDeclaredFields();
    //
    for (int i = 0; i < fields.length; i++) {
    if (fields[i].get(bfo) == null) {
    doc.replaceAll("${" + fields[i].getName() + "}", "");
    } else {
    doc.replaceAll("${" + fields[i].getName() + "}", fields[i]
    .get(bfo).toString());
    }
    }
    doc.saveAs(tpFile);
    doc.close(false);
    } catch (Exception e1) {
    e1.printStackTrace();
    }
    try {
    Object obj = CommonUtil.downloadFileEx(tpFile);
    CommonUtil.downLoadFile(obj, fileName, "application/msword");
    File file = new File(tpFile);
    file.delete();
    } catch (Exception e) {
    e.printStackTrace();
    }