Paragraph and text background color is an important element of document design in Word documents. Appropriate paragraph and text background color can serve to highlight specific paragraphs or text, enhance the contrast of text so that it is easier to read, and fill in the gaps in the layout to assist in typography. Therefore, the reasonable use of paragraph and text background color is very important when creating Word documents. This article is going to show how to set background color for paragraphs and text in Java using Spire.Doc for Java.
- Set Background Color for Paragraphs in Word Documents
- Set Background Color for Existing Text in Word Documents
Install Spire.Doc for Java
First, you're required to add the Spire.Doc.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.doc</artifactId> <version>12.9.0</version> </dependency> </dependencies>
Set Background Color for Paragraphs in Word Documents
To set the background color of a paragraph, we need to get the paragraph and use the Paragraph.getFormat().setBackColor() method to change its background color. The detailed steps are as follows.
- Create an object of Document.
- Load a Word document using Document.loadFromFile() method.
- Get the first section using Document.getSections().get() method.
- Get the third paragraph using Section.getParagraphs().get() method.
- Set the background color for the paragraph using Paragraph.getFormat().setBackColor() method.
- Save the document using Document.saveToFile() method.
- Java
import com.spire.doc.Document; import com.spire.doc.FileFormat; import com.spire.doc.Section; import com.spire.doc.documents.Paragraph; import java.awt.*; public class SetParagraphBackgroundColor { public static void main(String[] args) { //Create an object of Document Document document = new Document(); //Load a Word document document.loadFromFile("C:/Sample.docx"); //Get the first section Section section = document.getSections().get(0); //Get the third paragraph Paragraph paragraph = section.getParagraphs().get(2); //Set the background color of this paragraph as Light Gray paragraph.getFormat().setBackColor(Color.LIGHT_GRAY); //Save the document document.saveToFile("ParagraphBackgroundColor.docx", FileFormat.Docx_2013); document.dispose(); } }
Set Background Color for Existing Text in Word Documents
Spire.Doc for Java provides Document.findAllString() method to find all the occurrences of specific text in a Word document and TextRange.getCharacterFormat().setTextBackgroundColor() to set the background color for specific text. The detailed steps for setting the background color for existing text are as follows.
- Create an object of Document.
- Load a Word document using Document.loadFromFile() method.
- Find all the occurrences of “timeless universe” using Document.findAllString() method.
- Loop through the occurrences.
- Get each occurrence as a text range using TextSelection.getAsOneRange() method.
- Set the background color for the text range using TextRange.getCharacterFormat().setTextBackgroundColor() method.
- You can also choose an occurrence by its index from the collection, get it as a text range, and set background color only for the occurrence.
- Save the document using Document.saveToFile() method.
- Java
import com.spire.doc.Document; import com.spire.doc.FileFormat; import com.spire.doc.documents.TextSelection; import com.spire.doc.fields.TextRange; import java.awt.*; public class SetTextBackgroundColor { public static void main(String[] args) { //Create an object of Document Document document = new Document(); //Load a Word document document.loadFromFile("C:/Sample.docx"); //Find the text to set background color for TextSelection[] textSelections = document.findAllString("timeless universe", false, true); //Loop through the occurrences of the text for (TextSelection selection : textSelections){ //Get an occurrence as a text range TextRange textRange = selection.getAsOneRange(); //Set background color for the occurrence textRange.getCharacterFormat().setTextBackgroundColor(Color.CYAN); } //Set the background color for the first occurrence of the text //TextRange textRange = textSelections[0].getAsOneRange(); //textRange.getCharacterFormat().setTextBackgroundColor(Color.CYAN); //Save the document document.saveToFile("TextBackgroundColor.docx", FileFormat.Docx_2013); document.dispose(); } }
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.