package org.krakenapps.word; import java.io.File; import java.io.IOException; import org.krakenapps.word.model.Body; import org.krakenapps.word.model.Document; import org.krakenapps.word.model.GridColumnDefinition; import org.krakenapps.word.model.HexColor; import org.krakenapps.word.model.LeftBorder; import org.krakenapps.word.model.Paragraph; import org.krakenapps.word.model.ParagraphProperties; import org.krakenapps.word.model.ParagraphStyle; import org.krakenapps.word.model.Run; import org.krakenapps.word.model.Table; import org.krakenapps.word.model.TableBorders; import org.krakenapps.word.model.TableBottomBorder; import org.krakenapps.word.model.TableCell; import org.krakenapps.word.model.TableCellBorders; import org.krakenapps.word.model.TableCellProperties; import org.krakenapps.word.model.TableGrid; import org.krakenapps.word.model.TableLeadingEdgeBorder; import org.krakenapps.word.model.TableProperties; import org.krakenapps.word.model.TableRow; import org.krakenapps.word.model.TableTopBorder; import org.krakenapps.word.model.TableTrailingEdgeBorder; import org.krakenapps.word.model.TableWidth; import org.krakenapps.word.model.Text; import org.krakenapps.word.model.TwipsMeasure; public class Sample { public static void main(String[] args) throws IOException { WordFile f = new WordFile(new File("qoo.docx")); f.setDoc(dummy()); f.write(); } private static Document dummy() { Document d = new Document(); Body b = new Body(); b.add(newTextParagraph("방화벽 차단 통계", "Heading1")); b.add(newTextParagraph("지난 1주일간 방화벽에서 접속을 차단한 세션의 출발지 IP, 목적지 IP별 통계를 표시합니다.", null)); b.add(newTable()); d.setBody(b); return d; } private static Paragraph newTextParagraph(String value, String style) { Paragraph p = new Paragraph(); ParagraphProperties pPr = new ParagraphProperties(); if (style != null) pPr.add(new ParagraphStyle(style)); Run r = new Run(); Text t = new Text(value); r.add(t); p.add(pPr); p.add(r); return p; } private static Table newTable() { Table t = new Table(); TableProperties tp = new TableProperties(); TableBorders borders = new TableBorders(); borders.add(new TableTopBorder("single", 6, 0, new HexColor("000000"))); borders.add(new TableBottomBorder("single", 6, 0, new HexColor("000000"))); borders.add(new TableLeadingEdgeBorder("single", 6, 0, new HexColor("000000"))); borders.add(new TableTrailingEdgeBorder("single", 6, 0, new HexColor("000000"))); tp.add(borders); tp.add(new TableWidth("dxa", 8000)); TableGrid grid = new TableGrid(); grid.add(new GridColumnDefinition(new TwipsMeasure(3500))); grid.add(new GridColumnDefinition(new TwipsMeasure(3500))); grid.add(new GridColumnDefinition(new TwipsMeasure(1000))); TableRow tr = new TableRow(); TableCellProperties tcPr = new TableCellProperties(); TableCellBorders tcBorders = new TableCellBorders(); tcBorders.add(new LeftBorder("single", 4, 0, new HexColor("auto"))); tcPr.add(tcBorders); TableCell tc = new TableCell(); tc.add(newTextParagraph("출발지 IP", null)); tr.add(tc); TableCell tc2 = new TableCell(); tc2.add(tcPr); tc2.add(newTextParagraph("목적지 IP", null)); tr.add(tc2); TableCell tc3 = new TableCell(); tc3.add(tcPr); tc3.add(newTextParagraph("횟수", null)); tr.add(tc3); t.add(tp); t.add(grid); t.add(tr); return t; } }