1.创建word文档
public void createDoc() {
getLicense();
try
{
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
builder.writeln("Hello,Lain!");
doc.save(path)
} catch (Exception e) {
e.printStackTrace();
}
}
2.设置段落格式
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
builder.writeln("Hello,Lain!");
builder.getFont().setColor(Color.decode("#66ccff"));
builder.getFont().setName("微软雅黑");
builder.getFont().setHighlightColor(Color.gray);
* 缩进
*/ builder.getParagraphFormat().setFirstLineIndent(30);
* 行距:
* AT_LEAST 最小值
* EXACTLY 固定值
* MULTIPLE 多倍行距
* 注:多倍行距的值以12为基准,12为一倍行距,24为两倍,以此类推 */
builder.getParagraphFormat().setLineSpacingRule(LineSpacingRule.MULTIPLE); builder.getParagraphFormat().setLineSpacing(24);
builder.getParagraphFormat().setSpaceBefore(10);
builder.getParagraphFormat().setAlignment(ParagraphAlignment.RIGHT);
builder.getParagraphFormat().setBidi(false);
builder.writeln("Present Day,Present Time!Ahhhhhhh");
doc.save(getTempFileName());
3.页面分隔
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
builder.writeln("This is the 1st section,1st Page");
builder.insertBreak(BreakType.PAGE_BREAK);
builder.writeln("This is the 1st section,2nd Page");
builder.insertBreak(BreakType.LINE_BREAK);
builder.insertBreak(BreakType.COLUMN_BREAK);
builder.insertBreak(BreakType.SECTION_BREAK_CONTINUOUS);
builder.writeln("This is the 3rd section,1nd Page");
builder.writeln("连续分节符");
builder.insertBreak(BreakType.SECTION_BREAK_EVEN_PAGE);
builder.writeln("This is the 4th section,1nd Page");
builder.writeln("偶数页分节符");
builder.insertBreak(BreakType.SECTION_BREAK_ODD_PAGE);
builder.writeln("This is the 5th section,1nd Page");
builder.writeln("奇数页分节符");
builder.insertBreak(BreakType.SECTION_BREAK_NEW_PAGE);
builder.writeln("This is the 6th section,1nd Page");
builder.writeln("下一页分节符");
builder.insertBreak(BreakType.SECTION_BREAK_NEW_COLUMN);
builder.writeln("This is the 7th section,1nd Page");
builder.writeln("节的结尾");
doc.save(getTempFileName());
4.页面属性设置
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc); builder.write("Present Day,Present Life!Ahhhhhhh");
builder.getPageSetup().setPaperSize(PaperSize.A4);
builder.getPageSetup().setRightMargin(10);
builder.getPageSetup().setTopMargin(10); builder.getPageSetup().setBottomMargin(10);
builder.getPageSetup().setTextOrientation(TextOrientation.DOWNWARD);
doc.save(getTempFileName());
5.设置页眉页脚
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
builder.write("Hello,Lain!");
builder.insertBreak(BreakType.LINE_BREAK); builder.moveToHeaderFooter(HeaderFooterType.HEADER_PRIMARY);
builder.moveToDocumentEnd();
builder.writeln("Hello,Lain!");
builder.moveToHeaderFooter(HeaderFooterType.FOOTER_PRIMARY);
builder.getParagraphFormat().setAlignment(ParagraphAlignment.CENTER);
builder.getFont().setName("微软雅黑");
builder.write("第");
builder.insertField("PAGE", "");
builder.write("页");
builder.write(" 共"); builder.insertField("NUMPAGES", "");
builder.write("页");
builder.moveToDocumentEnd();
builder.insertBreak(BreakType.SECTION_BREAK_NEW_PAGE); builder.write("Hello,Lain!");
doc.save(getTempFileName());
6.生成表格
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
builder.startTable();
builder.insertCell();
builder.getCellFormat().setWidth(100);
builder.getFont().setName("华文正楷");
builder.getFont().setColor(Color.decode("#66ccff"));
builder.getParagraphFormat().setLineSpacing(24);
builder.write("Name");
builder.insertCell();
builder.getCellFormat().setWidth(200);
builder.write("describe");
builder.endRow();
builder.insertCell();
builder.getCellFormat().setWidth(100);
builder.write("Lain");
builder.insertCell();
builder.getCellFormat().setWidth(200);
builder.write("Make Me Sad");
builder.endRow();
builder.endTable();
doc.save(getTempFileName());
7.图片操作
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc); builder.getParagraphFormat().setAlignment(ParagraphAlignment.CENTER);
builder.insertImage(image);
doc.save(getTempFileName());
8.大纲
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
builder.insertTableOfContents("\\o \"1-9\" \\h \\z \\u");
builder.writeln();
builder.getParagraphFormat().setOutlineLevel(OutlineLevel.LEVEL_1);
builder.writeln("一级");
builder.insertBreak(BreakType.SECTION_BREAK_NEW_PAGE); builder.getParagraphFormat().setOutlineLevel(OutlineLevel.LEVEL_2);
builder.writeln("二级");
builder.insertBreak(BreakType.SECTION_BREAK_NEW_PAGE); builder.getParagraphFormat().setOutlineLevel(OutlineLevel.LEVEL_3);
builder.writeln("三级");
builder.getParagraphFormat().setOutlineLevel(OutlineLevel.BODY_TEXT);
builder.writeln("正文");
doc.updateFields();
doc.save(getTempFileName());