2015-07-14 2 views
0

Я создаю таблицу в Apache Пои в xwpf используя код ниже:Apache пои выравнивание xwpf таблицы

  XWPFTable table = doc.createTable(Countrows1+1,4); 
      table.getCTTbl().getTblPr().unsetTblBorders(); 
      table.setInsideHBorder(XWPFTable.XWPFBorderType.DASHED, 0,0,null); 
      table.setInsideVBorder(XWPFTable.XWPFBorderType.DASHED,0,0, null); 
      /* table header */ 

      table.getRow(0).getCell(0).setText("Column1"); 
      table.getRow(0).getCell(1).setText("Column2"); 
      table.getRow(0).getCell(2).setText("Column3"); 
      table.getRow(0).getCell(3).setText("Column"); 

      /* other rows to be populed here*/ 

Я не мог найти какой-либо метод с помощью которого мы могли бы выровнять таблицу слева, по центру или справа страница. Есть ли способ сделать это?

Также содержание первой строки должно быть выделено жирным шрифтом. Есть ли способ установить заголовок как полужирный?

+0

Для Вашего второго вопроса: https://stackoverflow.com/questions/27634991/how-to-format-the-text-in-a-xwpftable-in-apache-poi – golimar

ответ

1

можно выровнять таблицу, используя следующую функцию

public void setTableAlignment(XWPFTable table, STJc.Enum justification) { 
    CTTblPr tblPr = table.getCTTbl().getTblPr(); 
    CTJc jc = (tblPr.isSetJc() ? tblPr.getJc() : tblPr.addNewJc()); 
    jc.setVal(justification); 
} 
0

этот код работает для меня:

public void setTableAlign(XWPFTable table,ParagraphAlignment align) { 
    CTTblPr tblPr = table.getCTTbl().getTblPr(); 
    CTJc jc = (tblPr.isSetJc() ? tblPr.getJc() : tblPr.addNewJc()); 
    STJc.Enum en = STJc.Enum.forInt(align.getValue()); 
    jc.setVal(en); 
} 

И вы называете метод как это:

XWPFTable table = documento.createTable(); 
setTableAlign(table, ParagraphAlignment.CENTER);