没有找到合适的产品?
联系客服协助选型:023-68661681
提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
翻译|使用教程|编辑:李显亮|2019-07-25 10:11:41.470|阅读 654 次
概述:Spire.Doc for .NET是一个专业的Word .NET库,设计用于帮助开发人员高效地开发创建、阅读、编写、转换和打印任何来自.NET平台的Word文档文件的功能。本篇文章介绍了如何添加和删除word中的超链接。
# 界面/图表报表/文档/IDE等千款热门软控件火热销售中 >>
相关链接:
更多资源查看:Spire.XLS工作表教程 | Spire.Doc系列教程 | Spire.PDF系列教程
Spire.Doc for .NET是一个专业的Word .NET库,设计用于帮助开发人员高效地开发创建、阅读、编写、转换和打印任何来自.NET( C#, VB.NET, ASP.NET)平台的Word文档文件的功能。
本系列教程将为大家带来Spire.Doc for .NET在使用过程中的各类实际操作,本篇文章介绍了如何添加和删除word中的超链接。
超链接指的是在Word文本或者图片中插入能跳转到其他位置或对象的链接,常见的超链接可以链接到网址、电子邮箱地址、外部文件和书签。
添加文本超链接
//创建一个Document实例并添加section
Document doc = new Document();
Section section = doc.AddSection();
//添加指向网址的超链接
Paragraph para1 = section.AddParagraph();
para1.AppendHyperlink("www.e-iceblue.com", "www.e-iceblue.com",HyperlinkType.WebLink);
//添加指向邮件地址的超链接
Paragraph para2 = section.AddParagraph();
para2.AppendHyperlink("mailto:support @ e-iceblue.com", "support @ e-iceblue.com",HyperlinkType.EMailLink);
//添加指向外部文件的超链接
Paragraph para3 = section.AddParagraph();
string filePath = @"C:\Users\Administrator\Desktop\月销售统计表.xls";
para3.AppendHyperlink(filePath, "点击此处打开另一个文档",HyperlinkType.FileLink);
//设置段落之间的间距
para1.Format.AfterSpacing = 15f;
para2.Format.AfterSpacing = 15f;
//保存文档
doc.SaveToFile("文本超链接.docx", FileFormat.Docx2013);
添加图片超链接
//创建一个Document实例并添加section
Document doc = new Document();
Section section = doc.AddSection();
//添加段落
Paragraph para = section.AddParagraph();
//添加图片到段落并插入网站链接
Image image = Image.FromFile(@"C:\Users\Administrator\Desktop\logo.png");
Spire.Doc.Fields.DocPicture picture = para.AppendPicture(image);
para.AppendHyperlink("www.e-iceblue.com", picture, HyperlinkType.WebLink);
//保存文档
doc.SaveToFile("图片超链接.docx", FileFormat.Docx2013);
格式化文本超链接
默认状态下,超文本链接通常显示为蓝色带下划线。为了让超链接更醒目,我们也可以更改超链接的显示形式,例如去掉下划线、改变文本颜色、设置字体大小。
//创建一个Document实例并添加section
Document doc = new Document();
Section section = doc.AddSection();
//添加段落
Paragraph para = section.AddParagraph();
//添加超链接到段落并返回到一个TextRange对象
TextRange txtRange = para.AppendHyperlink("www.e-iceblue.com", "WWW.E-ICEBLUE.COM", HyperlinkType.WebLink);
//在TextRange中设置字体名字、大小、颜色、样式
txtRange.CharacterFormat.FontName = "黑体";
txtRange.CharacterFormat.TextColor = Color.Purple;
txtRange.CharacterFormat.FontSize = 15;
txtRange.CharacterFormat.Bold = true;
txtRange.CharacterFormat.UnderlineStyle = UnderlineStyle.None;
//保存文档
doc.SaveToFile("格式化超链接.docx", FileFormat.Docx2013);
源文档:

//创建Word对象并加载文档
Document document = new Document();
document.LoadFromFile(@"hyperlinks.docx");
foreach (Section section in document.Sections)
{
//删除正文里的超链接
foreach (DocumentObject obj in section.Body.ChildObjects)
{
RemoveLinks(obj,document);
}
//删除页眉页脚中的超链接
foreach (HeaderFooter hf in section.HeadersFooters)
{
foreach (DocumentObject hfobj in hf.ChildObjects)
{
RemoveLinks(hfobj, document);
}
}
}
//保存文档
document.SaveToFile("RemoveLinks.docx",FileFormat.Docx);
private static void RemoveLinks(DocumentObject obj,Document document)
{
//删除段落中的超链接
RemoveLinksInPara(obj,document);
//删除表格中的超链接
if (obj.DocumentObjectType == DocumentObjectType.Table)
{
foreach (TableRow row in (obj as Table).Rows)
{
foreach (TableCell cell in row.Cells)
{
foreach (DocumentObject cobj in cell.ChildObjects)
{
RemoveLinksInPara(cobj,document);
}
}
}
}
}
private static void RemoveLinksInPara(DocumentObject obj,Document document)
{
if (obj.DocumentObjectType == DocumentObjectType.Paragraph)
{
var objs = (obj as Paragraph).ChildObjects;
for (int i = 0; i < objs.Count; i++)
{
if (objs[i].DocumentObjectType == DocumentObjectType.Field)
{
//获取超链接域
Field field = objs[i] as Field;
if (field.Type == FieldType.FieldHyperlink)
{
//获取超链的文本或图片对象
DocumentObject dObj = field.NextSibling.NextSibling as DocumentObject;
//删除文本超链接,保留文本和样式
if (dObj is TextRange)
{
//获取超链接文本样式
CharacterFormat format = (dObj as TextRange).CharacterFormat;
format.UnderlineStyle = UnderlineStyle.None;
format.TextColor = Color.Black;
//创建TextRange并把超链接的文本赋给它
TextRange tr = new TextRange(document);
tr.Text = field.FieldText;
//应用样式
tr.ApplyCharacterFormat(format);
//删除文本超链接域
objs.RemoveAt(i);
//重新插入文本
objs.Insert(i, tr);
}
//删除图片超链接,保留图片
if (dObj is DocPicture)
{
//删除图片超链接域
objs.RemoveAt(i);
//重新插入图片
objs.Insert(i, dObj);
}
}
}
}
}
}结果

*购买Spire.Doc正版授权的朋友可以点击哦~~
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@ke049m.cn
文章转载自:



注意: Cogent DataHub 软件 v11 包含一些新功能,您的目标操作系统可能不支持这些功能。
本教程主要为大家介绍如何使用DevExpress WinForms数据网格控件进行数据排序的基础知识,欢迎下载最新版组件体验!
在使用Parasoft C/C++test执行BugDetective数据流分析时,可能会遇到用户自定义的资源API,那在这种情况下,若要判断是否存在资源问题,如资源泄露等,则需要手动配置测试配置。
大型SaaS系统的自动化测试常常受制于界面变化快、结构复杂、加载机制多变等因素。从元素识别到脚本管理,SmartBear TestComplete帮助Salesforce建了可靠的自动化测试体系。
相关产品
Spire.Doc for .NET 是一款专门对 Word 文档进行操作的 .NET 类库。
Spire.Doc Pack专业的Word工具套包,强大的Word编辑功能。
最新文章 MORE
半岛外围网上直营相关的文章 MORE
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@ke049m.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢
半岛外围网上直营