public class JavaToWords {
/**
* word运行程序对象
*/
private ActiveXComponent word;
/**
* 选定内容
* @return Dispatch 选定的范围或插入点
*/
public Dispatch select() {
return word.getProperty("Selection").toDispatch();
}
public void toWord(String seekView) {
Dispatch selection = select();
//设置页眉
if(seekView != null && !"".equals(seekView)){
//取得活动窗体对象
Dispatch ActiveWindow = word.getProperty("ActiveWindow").toDispatch();
//取得活动窗格对象
Dispatch ActivePane = Dispatch.get(ActiveWindow,"ActivePane").toDispatch();
//取得视窗对象
Dispatch View = Dispatch.get(ActivePane, "View").toDispatch();
try{
Dispatch.put(View,"SeekView", "9"); //设置页眉
Dispatch.put(selection,"Text",seekView);
Dispatch.put(View, "SeekView", "10"); // 10是设置页脚
Dispatch.put(selection, "Text", seekView); //
}finally{
if(ActiveWindow != null ) ActiveWindow.safeRelease();
if(ActivePane != null ) ActivePane.safeRelease();
if(View != null ) View.safeRelease();
}
}
}
}
希望对你有些帮助,不过好像要下一个外部资源包,叫jacob 的,我也记的不太清楚了,应该是这个,你找找看
2. word怎么更新目录的两种方法
一、利用大纲级别自动生成目录
如果要插入目录,请单击“插入”菜单,指向“引用”→“索引和目录”,出现“索引和目录”的画面,点击“目录”标签,倘若直接按下“确定”按钮,则会以黑体字提示“错误!未找到目录项”。
目录项的定义很简单,点击“视图”→“大纲”切换至大纲模式,如下图所示,大纲模式下文档各段落的级别显示得清楚,选定文章标题,将之定义为“1级”,接着依次选定需要设置为目录项的文字,将之逐一定义为“2级”。当然,若有必要,可继续定义“3级”目录项。
五、接下来定义的是次索引项,操作方法同上,但在标记时应当注意:你所选定的文本内容在默认情况下会出现在“主索引项”而不是“次索引项”中,请在 “次索引项”中输入你选定的文本“新作《阿难》:言情+问题”,同时在“主索引项”中输入刚才标记过的“一个文坛独行者”,这时该次索引项后出现如下内容:
3. java使用freemarker生成word文档可以动态生成目录结构么
首先来,通过xml模板可以将基源本上所有的格式都事先锁定,包括页码和分页,只要你事先预设好就能够通过freemarker实现生成,
接下来就是我这个问题了,目录怎么解决,下面是解决思路:
1:目录的内容可以根据之前其他的内容一样解决,通过XML模板预先设置好,
2:目录的页码已经研究过是不能直接通过xml模板实现动态对应了(至少我没搞定0.0)
3:由于不能够一步到位,我采取了在模板中预留了一页空白页,只留了抬头的目录两个字,然后通过查询目录二字进行目录的生成,
这个功能也是我刚刚折腾出来的0.0目前还没测试能不能用模板生成目录后再更新目录0.0,不过想想可以直接生成目录应该就不用这么麻烦了,至于word生成后的修改0.0我觉得还是以后再说吧.....
整体来说应该还算完美解决了,代码我就不在这贴出来了~
虽然中间折腾了半天走了半天弯路~
讲道理还是用的jacob来实现的。。