As you create or review a worksheet, you may want to change the font style in some cells to make them stand out. For example, you can apply a different font type, font color, and font size to text, as well as make text bold. In this article, you will learn how to apply font styles to Excel cells using Spire.XLS for Java.
Install Spire.XLS for Java
First of all, you’re required to add the Spire.Xls.jar file as a dependency in your Java program. The JAR file can be downloaded from this link. If you use Maven, you can easily import the JAR file in your application by adding the following code to your project's pom.xml file.
<repositories> <repository> <id>com.e-iceblue</id> <name>e-iceblue</name> <url>https://repo.e-iceblue.com/nexus/content/groups/public/</url> </repository> </repositories> <dependencies> <dependency> <groupId>e-iceblue</groupId> <artifactId>spire.xls</artifactId> <version>14.11.0</version> </dependency> </dependencies>
Apply Different Fonts to Different Cells
Spire.XLS provides the ExcelFont class which you can use to set or change the font name, color, size, and style in a cell easily. The following are the steps to apply a font style to a specific cell using Spire.XLS for Java.
- Create a Workbook object.
- Get a specific worksheet using Workbook.getWorksheets().get() method.
- Get a specific cell using Worksheet.getCellRange() method.
- Set the value of the cell using CellRange.setText() method.
- Set the font name, color, size and style of the cell value using setFontName(), setFontColor(), setFontSize(), isBlod() methods under the ExcelFont object.
- Save the workbook to an Excel file using Workbook.saveToFile() method.
- Java
import com.spire.xls.ExcelVersion; import com.spire.xls.FontUnderlineType; import com.spire.xls.Workbook; import com.spire.xls.Worksheet; import java.awt.*; public class ApplyFontToCell { public static void main(String[] args) { //Create a workbook Workbook workbook = new Workbook(); //Get the first sheet Worksheet sheet = workbook.getWorksheets().get(0); //Set font name sheet.getCellRange("B1").setText("Font name: Comic Sans MS"); sheet.getCellRange("B1").getCellStyle().getExcelFont().setFontName("Comic Sans MS"); //Set font size sheet.getCellRange("B2").setText("Font size: 20"); sheet.getCellRange("B2").getCellStyle().getExcelFont().setSize(20); //Set font color sheet.getCellRange("B3").setText("Font color: Blue"); sheet.getCellRange("B3").getCellStyle().getExcelFont().setColor(Color.blue); //Make text bold sheet.getCellRange("B4").setText("Font style: Bold"); sheet.getCellRange("B4").getCellStyle().getExcelFont().isBold(true); //Make text italic sheet.getCellRange("B5").setText("Font style: Italic"); sheet.getCellRange("B5").getCellStyle().getExcelFont().isItalic(true); //Underline text sheet.getCellRange("B6").setText("Font style: Underline"); sheet.getCellRange("B6").getCellStyle().getExcelFont().setUnderline(FontUnderlineType.Single); //Strikethrough text sheet.getCellRange("B7").setText("Font style: Strikethrough"); sheet.getCellRange("B7").getCellStyle().getExcelFont().isStrikethrough(true); //Save the result file workbook.saveToFile("output/ApplyFontToCell.xlsx", ExcelVersion.Version2016); } }
Apply Multiple Fonts to a Single Cell
Mixing different font styles can help you emphasize some specific characters in a cell. The following are the steps to apply multiple fonts in a cell using Spire.XLS for Java.
- Create a Workbook object.
- Get a specific worksheet using Workbook.getWorksheets().get() method.
- Create two ExcelFont objects using Workbook.createFont() method.
- Get a specific cell using Worksheet.getCellRange() method, and set the rich text content of the cell using CellRange.getRichText().setText() method.
- Apply the two ExcelFont objects to the rich text using RichText.setFont() method.
- Save the workbook to an Excel file using Workbook.saveToFile() method.
- Java
import com.spire.xls.*; import java.awt.*; public class ApplyMultipleFontsToCell { public static void main(String[] args) { //Create a Workbook instance Workbook wb = new Workbook(); //Get the first worksheet Worksheet sheet = wb.getWorksheets().get(0); //Create one Excel font ExcelFont font1 = wb.createFont(); font1.setFontName("Arial Black"); font1.setColor(Color.blue); font1.setSize(13f); font1.isBold(true); //Create another Excel font ExcelFont font2 = wb.createFont(); font2.setFontName("Algerian"); font2.setColor(Color.red); font2.setSize(15f); font2.isBold(true); font2.isItalic(true); //Insert text to cell B5 RichText richText = sheet.getCellRange("B5").getRichText(); richText.setText("Buy One, Get One Free"); //Apply two fonts to the text in the cell B5 richText.setFont(0, 8, font1); richText.setFont(9, 21, font2); //Save the document wb.saveToFile("output/ApplyMultipleFontsToCell.xlsx", ExcelVersion.Version2016); } }
Apply for a Temporary License
If you'd like to remove the evaluation message from the generated documents, or to get rid of the function limitations, please request a 30-day trial license for yourself.