问题
How can i put this string in to a cell using java apache poi?
The string is "Hello world Hello"
As u can see i need to make a part of the text bold?
I'm able to set the entire contents of the cell to bold but not specific parts.
Please help me.
回答1:
This is probably what you are looking for: http://poi.apache.org/spreadsheet/quick-guide.html#DrawingShapes
Find this in the explanation:
It's possible to use different fonts to style parts of the text in the textbox. Here's how:
HSSFFont font = wb.createFont();
font.setItalic(true);
font.setUnderline(HSSFFont.U_DOUBLE);
HSSFRichTextString string = new HSSFRichTextString("Woo!!!");
string.applyFont(2,5,font);
textbox.setString(string );
This might be useful: http://apache-poi.1045710.n5.nabble.com/Multiple-text-styles-in-Excel-cell-td4922683.html
回答2:
This will print "Hello world Hello" in a cell
XSSFRichTextString rts= new XSSFRichTextString("Hello ");
XSSFFont fontBold= wb.createFont();
fontBold.setBold(true); //set bold
fontBold.setFontHeight(12); //add font size
rts.append("world ",fontBold);
rts.append("Hello");
sheet.getRow(1).getCell(1).setCellValue(rts);
来源:https://stackoverflow.com/questions/9697330/setting-a-part-of-the-cell-contents-to-bold-using-apache-poi