本文介绍如何使用spire.doc for java添加可填充的窗体域,包括文本框、复选框、下拉列表框,到word文档。
import com.spire.doc.*;
import com.spire.doc.documents.paragraph;
import com.spire.doc.documents.paragraphstyle;
import com.spire.doc.documents.verticalalignment;
import com.spire.doc.fields.checkboxformfield;
import com.spire.doc.fields.dropdownformfield;
import com.spire.doc.fields.textformfield;
public class createformfields {
public static void main(string[] args) {
//创建word文档,添加一个section
document doc = new document();
section section = doc.addsection();
//添加一个表格
table table = section.addtable();
table.resetcells(3,2);
//写入文本到指定单元格
paragraph paragraph = table.getrows().get(0).getcells().get(0).addparagraph();
paragraph.appendtext("文本框");
paragraph = table.getrows().get(1).getcells().get(0).addparagraph();
paragraph.appendtext("复选框");
paragraph = table.getrows().get(2).getcells().get(0).addparagraph();
paragraph.appendtext("下拉列表框");
//添加文本框到指定单元格
paragraph = table.getrows().get(0).getcells().get(1).addparagraph();
textformfield textfield = (textformfield) paragraph.appendfield("text", fieldtype.field_form_text_input);
textfield.settextfieldtype(textformfieldtype.regular_text);
//添加复选框到指定单元格
paragraph = table.getrows().get(1).getcells().get(1).addparagraph();
checkboxformfield checkboxfield = (checkboxformfield)paragraph.appendfield("checkbox", fieldtype.field_form_check_box);
//添加下拉列表框到指定单元格
paragraph = table.getrows().get(2).getcells().get(1).addparagraph();
dropdownformfield dropdownfield = (dropdownformfield)paragraph.appendfield("listbox",fieldtype.field_form_drop_down);
dropdownfield.getdropdownitems().add("英国");
dropdownfield.getdropdownitems().add("美国");
dropdownfield.getdropdownitems().add("其他");
//创建一个paragraphstyle对象
paragraphstyle style = new paragraphstyle(doc);
style.setname("newfont");
style.getcharacterformat().setfontname("宋体");
style.getcharacterformat().setfontsize(13);
doc.getstyles().add(style);
for (int i = 0; i < table.getrows().getcount(); i ) {
//设置行高
table.getrows().get(i).setheight(30f);
for (object cell:table.getrows().get(i).getcells()){
if (cell instanceof tablecell)
{
//将每个单元格的垂直对齐方式设置为居中
((tablecell) cell).getcellformat().setverticalalignment(verticalalignment.middle);
//应用段落样式到每个单元格的第一个段落
((tablecell) cell).getparagraphs().get(0).applystyle(style.getname());
}
}
}
//保存文档
doc.savetofile("output/addformfields.docx", fileformat.docx_2013);
}
}