'How to format the text in a XWPFTable in Apache POI

I have created a XWPFTable in word using Apache POI. Now the table is coming out properly with text in the column. Now I want to format the text in the table along with size, font etc. How can I do that? What I am seeing is that every trick is associated with the run option. But what I want is in TableRow. See what I have done so far:

XWPFTable tableTwo = document.createTable();
XWPFTableRow tableTwoRowOne = tableTwo.getRow(0);
tableTwo.getCTTbl().getTblPr().unsetTblBorders();
tableTwoRowOne.getCell(0).setText("No Match – Location: ");
tableTwoRowOne.addNewTableCell().setText("Prospect has expressed unwillingness to relocate or is based out of area where commute is not feasible");

XWPFTableRow tableTwoRowTwo = tableTwo.createRow();
tableTwoRowTwo.getCell(0).setText("No Match – Scalability: ");
tableTwoRowTwo.getCell(1).setText("Prospect’s recent organizational size, structure, and complexity is not scalable to client’s environment");

I want to format the text of the table tableTwo and tableTwoRowTwo. How can I achieve that?



Solution 1:[1]

I found a simple solution.

XWPFTable table = document.createTable();
XWPFTableRow row = table.insertNewTableRow(0);
XWPFRun run = row.addNewTableCell().addParagraph().createRun();
run.setBold(true);run.setText("Your Text");

You can add any other text format functions to run object.

Solution 2:[2]

Thanks a lot and below code also worked for me. In my case I was replacing the PLACE HOLDER with another text.

for (XWPFTableCell cell : cells) {                    
   String cellTextString = cell.getText();                    

  if (cellTextString != null && cellTextString.contains(placeholder)) {
       cellTextString = cellTextString.replace(placeholder,waterMarkText);   

       cell.removeParagraph(0);

       XWPFParagraph addParagraph = cell.addParagraph();
       XWPFRun run = addParagraph.createRun();
       run.setFontFamily("Calibri");
       run.setFontSize(10);
       run.setText(cellTextString);

     }                
}

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 Sachin Dandavati
Solution 2 Hitesh Patel