在Word文档中,文本框是指一种可移动、可调大小的文字或图形容器。使用文本框,能够使文档在内容和形式上更为饱满。本文将通过使用Java编程来演示如何添加、删除Word文档中的文本框。
使用工具:Free Spire.Doc for Java(免费版)
Jar文件获取及导入:
方法1:通过官网下载获取Jar包。下载后,解压文件,并将lib文件夹下的Spire.Doc.Jar文件导入Java程序。(如下图)
方法2:通过maven仓库安装导入。具体安装教程详见此网页。
添加文本框
Java代码示例:
import com.spire.doc.*;
import com.spire.doc.documents.*;
import com.spire.doc.fields.DocPicture;
import com.spire.doc.fields.TextBox;
import com.spire.doc.fields.TextRange;
import java.awt.*;
public class InsertTextBox {
public static void main(String[] args) {
//加载Word文档
Document doc =new Document();
doc.loadFromFile("C:\\Users\\Test1\\Desktop\\Sample.docx");
//添加文本框
TextBox tb = doc.getSections().get(0).getParagraphs().get(0).appendTextBox(100f,350f);
//设置文字环绕方式
tb.getFormat().setTextWrappingStyle(TextWrappingStyle.Square);
//设置文本框的相对位置
tb.getFormat().setHorizontalOrigin(HorizontalOrigin.Right_Margin_Area);
tb.getFormat().setHorizontalPosition(-100f);
tb.getFormat().setVerticalOrigin(VerticalOrigin.Page);
tb.getFormat().setVerticalPosition(100f);
//设置文本框边框样式
tb.getFormat().setLineStyle(TextBoxLineStyle.Thin_Thick);
tb.getFormat().setLineColor(new Color(240,135,152));
//插入图片到文本框
Paragraph para = tb.getBody().addParagraph();
DocPicture picture = para.appendPicture("C:\\Users\\Test1\\Desktop\\Image.jpg");
picture.setHeight(90f);
picture.setWidth(80f);
para.getFormat().setHorizontalAlignment(HorizontalAlignment.Center);
para.getFormat().setAfterSpacing(15f);
//插入文字到文本框
para = tb.getBody().addParagraph();
TextRange textRange = para.appendText("圣诞老人,是一位身穿红袍、头戴红帽的白胡子老头。" +
"每年圣诞节他驾着鹿拉的雪橇从北方而来,由烟囱进入各家,把圣诞礼物装在袜子里挂在孩子们的床头上或火炉前。 ");
textRange.getCharacterFormat().setFontName("宋体");
textRange.getCharacterFormat().setFontSize(12f);
para.getFormat().setHorizontalAlignment(HorizontalAlignment.Center);
//保存文档
doc.saveToFile("output/InsertTextbox.docx", FileFormat.Docx_2013);
}
}
文本框添加效果:
删除文本框
Java代码示例:
import com.spire.doc.Document;
import com.spire.doc.FileFormat;
public class RemoveTextBox {
public static void main(String[] args) {
//加载含有文本框的Word文档
Document doc =new Document();
doc.loadFromFile("C:\\Users\\Test1\\Desktop\\RemoveTextbox.docx");
//通过索引移除文本框
doc.getTextBoxes().removeAt(0);
//移除所有文本框
//doc.getTextBoxes().clear();
//保存文档
doc.saveToFile("output/RemoveTextbox.docx", FileFormat.Docx);
}
}
文本框删除效果:
(本文完)