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 ( ) ) ;