本帖最后由 long1867 于 2010-01-11 20:14:03 编辑 项目需要生成一个Word格式的统计报表
[实现思路]
1.依据POI.XWPF提供的例子,创建好了生成07Word的Java程序
2.接着用JFreeChart生成报表中的用到的图表(保存为图片)
3.最后再把图表插入到Word中
[问题描述]
1和2都实现了,今天实现最后一步的时候才发现,POI没有相关的方法来实现插入图片。。。一下子被打回原型。。傻了!
[寻求帮助]
大伙们有遇到过类似问题么?是如果实现的。。。请分享一下你们的经验和想法!万分感谢啊!!!
下面贴上POI自带的一个生成07Word的例子:[/color]
-------------------------------------------
import java.io.FileOutputStream;
import org.apache.poi.xwpf.usermodel.*;
/**
* A simple WOrdprocessingML document created by POI XWPF API
*
* @author Yegor Kozlov
*/
public class SimpleDocument {
public static void main(String[] args) throws Exception {
XWPFDocument doc = new XWPFDocument();
XWPFParagraph p1 = doc.createParagraph();
p1.setAlignment(ParagraphAlignment.CENTER);
p1.setBorderBottom(Borders.DOUBLE);
p1.setBorderTop(Borders.DOUBLE);
p1.setBorderRight(Borders.DOUBLE);
p1.setBorderLeft(Borders.DOUBLE);
p1.setBorderBetween(Borders.SINGLE);
p1.setVerticalAlignment(TextAlignment.TOP);
XWPFRun r1 = p1.createRun();
r1.setBold(true);
r1.setText("The quick brown fox");
r1.setBold(true);
r1.setFontFamily("Courier");
r1.setUnderline(UnderlinePatterns.DOT_DOT_DASH);
r1.setTextPosition(100);
XWPFParagraph p2 = doc.createParagraph();
p2.setAlignment(ParagraphAlignment.RIGHT);
//BORDERS
p2.setBorderBottom(Borders.DOUBLE);
p2.setBorderTop(Borders.DOUBLE);
p2.setBorderRight(Borders.DOUBLE);
p2.setBorderLeft(Borders.DOUBLE);
p2.setBorderBetween(Borders.SINGLE);
XWPFRun r2 = p2.createRun();
r2.setText("jumped over the lazy dog");
r2.setStrike(true);
r2.setFontSize(20);
XWPFRun r3 = p2.createRun();
r3.setText("and went away");
r3.setStrike(true);