word允许通过插入符号操作来向文档中添加一些键盘上没有的特殊符号,本文将介绍如何使用spire.doc来进行同样的操作。
c#
//实例化一个document对象
document doc = new document();
//向文档中添加一个section对象
section sec = doc.addsection();
//在这个section上添加一个段落
paragraph p = sec.addparagraph();
p.appendtext("这是一个打勾的复选框:");
//在段落之后追加一个打勾的复选框,这个符号的十六进制是"\u0052",
//也可以用十进制(char)82).tostring()来表示它。
//textrange tr=p.appendtext("\u0052");
textrange tr= p.appendtext(((char)82).tostring());
//设置字体,可以在word中查看对应的符号是什么字体,这里打勾的复选框是wingdings2字体
tr.characterformat.fontname = "wingdings 2";
//添加一个新的段落,并添加一个邮件图标
paragraph p1 = sec.addparagraph();
p1.appendtext("这是一个邮件图标:");
//textrange tr1 = p1.appendtext("\u002a");
textrange tr1 = p1.appendtext(((char)42).tostring());
tr1.characterformat.fontname = "wingdings";
//添加一个新的段落,并添加一个笑脸符号
paragraph p2 = sec.addparagraph();
p2.appendtext("这是一个笑脸符号:");
//textrange tr2 = p2.appendtext("\u004a");
textrange tr2 = p2.appendtext(((char)74).tostring());
tr2.characterformat.fontname = "wingdings";
//保存文档
doc.savetofile("添加特殊符号.docx");
vb.net
'实例化一个document对象
dim doc as document = new document
'向文档中添加一个section对象
dim sec as section = doc.addsection
'在这个section上添加一个段落
stardim p as paragraph = sec.addparagraph
p.appendtext("这是一个打勾的复选框:")
'在段落之后追加一个打勾的复选框,这个符号的十六进制是"\u0052",
'也可以用十进制(char)82).tostring()来表示它。
'textrange tr=p.appendtext("\u0052");
dim tr as textrange = p.appendtext(ctype(82,char).tostring)
'设置字体,可以在word中查看对应的符号是什么字体,这里打勾的复选框是wingdings2字体
tr.characterformat.fontname = "wingdings 2"
'添加一个新的段落,并添加一个邮件图标
dim p1 as paragraph = sec.addparagraph
p1.appendtext("这是一个邮件图标:")
'dim tr1 as textrange = p1.appendtext("\u002a")
dim tr1 as textrange = p1.appendtext(ctype(42,char).tostring)
tr1.characterformat.fontname = "wingdings"
'添加一个新的段落,并添加一个笑脸符号
dim p2 as paragraph = sec.addparagraph
p2.appendtext("这是一个笑脸符号:")
'dim tr2 as textrange = p2.appendtext("\u004a")
dim tr2 as textrange = p2.appendtext(ctype(74,char).tostring)
tr2.characterformat.fontname = "wingdings"
'保存文档
doc.savetofile("添加特殊符号.docx")
效果图如下
删除特殊符号
c#
//实例化一个document对象
document doc = new document();
//加载文档
doc.loadfromfile("特殊符号.docx");
//用findstring方法找到要删除的邮件图标
textrange tr = doc.findstring("\u002a", true, true).getasonerange();
//定位到这个textrange所在的段落然后删除这个textrange
paragraph p = tr.ownerparagraph;
p.childobjects.remove(tr);
//保存文档
doc.savetofile("test.docx", fileformat.docx2013);
vb.net
'实例化一个document对象
dim doc as document = new document
'加载文档
doc.loadfromfile("特殊符号.docx")
'用findstring方法找到要删除的邮件图标
dim tr as textrange = doc.findstring("\u002a", true, true).getasonerange
'定位到这个textrange所在的段落然后删除这个textrange
dim p as paragraph = tr.ownerparagraph
p.childobjects.remove(tr)
'保存文档
doc.savetofile("test.docx", fileformat.docx2013)
效果图如下