We have demonstrated how to insert text and image to textbox in a Word document by using Spire.Doc for Java. This article will demonstrate how to insert table to textbox in Word.
import com.spire.doc.*; import com.spire.doc.documents.*; import com.spire.doc.fields.*; import java.awt.*; public class insertTableIntoTextBox { public static void main(String[] args) throws Exception{ //Create a new document; add a section and paragraph Document doc = new Document(); Section section = doc.addSection(); Paragraph paragraph = section.addParagraph(); //Add a textbox to the paragraph TextBox textbox = paragraph.appendTextBox(380, 100); //Set the position of the textbox textbox.getFormat().setHorizontalOrigin(HorizontalOrigin.Page); textbox.getFormat().setHorizontalPosition(140); textbox.getFormat().setVerticalOrigin(VerticalOrigin.Page); textbox.getFormat().setVerticalPosition(50); //Insert table to the textbox Table table = textbox.getBody().addTable(true); //Specify the number of rows and columns of the table table.resetCells(4, 4); //Define the data String[][] data = new String[][] { {"Name", "Age", "Gender", "ID"}, {"John", "28", "Male", "0023"}, {"Steve", "30", "Male", "0024"}, {"Lucy", "26", "female", "0025"} }; //Add data to the table for (int i = 0; i < 4; i++) { TableRow dataRow = table.getRows().get(i); dataRow.getCells().get(i).setWidth(70); dataRow.setHeight(22); dataRow.setHeightType(TableRowHeightType.Exactly); for (int j = 0; j < 4; j++) { TextRange tableRange = table.getRows().get(i).getCells().get(j).addParagraph().appendText(data[i][j]); tableRange.getCharacterFormat().setFontName("Arial"); tableRange.getCharacterFormat().setFontSize(11f); tableRange.getOwnerParagraph().getFormat().setHorizontalAlignment(HorizontalAlignment.Center); tableRange.getCharacterFormat().setBold(true); } } //Set the background color for the first row TableRow row = table.getRows().get(0); for (int z = 0; z < row.getCells().getCount(); z++) { row.getCells().get(z).getCellFormat().setBackColor(new Color(176,224,238)); } //Apply style to the table table.applyStyle(DefaultTableStyle.Table_Grid_5); //Save the document String output = "output/insertTableIntoTextBox.docx"; doc.saveToFile(output, FileFormat.Docx_2013); } }
The effective screenshot after insert table to Textbox in Word: