C# 添加、修改、删除PPT中的超链接

本文介绍通过C# 编程如何在PPT幻灯片中添加超链接的方法,添加链接时,可给文本或者图片添加超链接,链接对象可指向网页地址、邮件地址、指定幻灯片等,此外,也可以参考文中编辑、删除幻灯片中已有超链接的方法。

程序使用类库:Free Spire.Presentation for .NET (免费版)

dll获取及引用:

方法1可通过官网下载包,解压将Bin文件夹下的程序安装到指定路径;完成安装后,将安装路径下Bin文件夹中的Spire.Presentation.dll文件添加引用到程序,并添加using指令。

方法2可通过Nuget安装导入

Dll添加引用效果如下图:

C# 代码示例

1. 添加超链接到PPT幻灯片

using Spire.Presentation;using Spire.Presentation.Drawing;using System.Drawing;namespace AddHyperlink{class Program    {static void Main(string[] args)        {//初始化Presentation实例Presentation ppt = new Presentation();//添加一张幻灯片作为第二张幻灯片(创建文档时,已默认生成一页幻灯片)            ppt.Slides.Append();//获取第1张幻灯片,并添加形状ISlide slide1 = ppt.Slides[0];            IAutoShape shape = slide1.Shapes.AppendShape(ShapeType.Rectangle, new RectangleF(100, 100, 450,200));            shape.Fill.FillType = FillFormatType.Solid;            shape.Fill.SolidColor.Color = Color.LightYellow;            shape.ShapeStyle.LineColor.Color = Color.White;//声明字符串变量string s1 = "BIDU";string s2 = "是全球最大的中文搜索引擎,中国最大的以信息和知识为核心的互联网综合服务公司,全球领先的人工智能平台型公司。";string s3 = "详见第二页内容介绍";//获取形状段落(默认有一个空白段落)TextParagraph paragraph = shape.TextFrame.TextRange.Paragraph;            paragraph.Alignment = TextAlignmentType.Left;//根据字符串s1创建tr1,并在文字上添加链接,指向网页地址TextRange tr1 = new TextRange(s1);            tr1.ClickAction.Address = "https://www.baidu.com/";//tr1.ClickAction.Address = "mailto:123654zz@163.com";//指向邮件地址//根据字s2创建tr2TextRange tr2 = new TextRange(s2);//根据字符串s3创建tr3,并在文字上添加链接,指向第二张幻灯片TextRange tr3 = new TextRange(s3);            ClickHyperlink link = new ClickHyperlink(ppt.Slides[1]);            tr3.ClickAction = link;//将TextRange添加到段落            paragraph.TextRanges.Append(tr1);            paragraph.TextRanges.Append(tr2);            paragraph.TextRanges.Append(tr3);//设置段落的字体样式foreach (TextRange tr in paragraph.TextRanges)            {                tr.LatinFont = new TextFont("宋体 (Body)");                tr.FontHeight = 20f;                tr.IsBold = TriState.True;                tr.Fill.FillType = FillFormatType.Solid;                tr.Fill.SolidColor.Color = Color.Black;            }//获取第2张幻灯片,添加形状,并将图片添加到形状,设置链接,指向网页地址ISlide slide2 = ppt.Slides[1];            RectangleF rect = new RectangleF(250, 175, 195, 130);            IEmbedImage image = slide2.Shapes.AppendEmbedImage(ShapeType.Rectangle, @"tp.png", rect);            ClickHyperlink hyperlink = new ClickHyperlink("https://www.baidu.com/");            image.Click = hyperlink;//保存文档ppt.SaveToFile("AddHyperlink.pptx", FileFormat.Pptx2010);            System.Diagnostics.Process.Start("AddHyperlink.pptx");        }    }}

可在幻灯片放映中查看超链接添加效果。

文本超链接添加效果:

图片超链接添加效果:

2. 编辑、删除PPT幻灯片中的超链接

using Spire.Presentation;namespace ModifyHyperlink{class Program    {static void Main(string[] args)        {//初始化Presentation实例Presentation ppt = new Presentation();//加载现有的文档ppt.LoadFromFile("AddHyperlink.pptx");//获取第一张幻灯片ISlide slide = ppt.Slides[0];//遍历shapeforeach (IShape shape in slide.Shapes)            {//判断是否为autoshapeif (shape is IAutoShape)                {//将shape转换为autoshapeIAutoShape autoShape = shape as IAutoShape;//遍历autoshape中的paragraphforeach (TextParagraph tp in autoShape.TextFrame.Paragraphs)                    {//判断paragraph下是否含有textrangeif (tp.TextRanges != null && tp.TextRanges.Count > 0)                        {//遍历textrangefor (int tpcount = 0; tpcount < tp.TextRanges.Count; tpcount++)                            {//判断是否含有文本且含有ClickAction和链接if (tp.TextRanges[tpcount].ClickAction != null && !string.IsNullOrWhiteSpace(tp.TextRanges[tpcount].ClickAction.Address) && !string.IsNullOrWhiteSpace(tp.TextRanges[tpcount].Text))                                {//判断是否含有http链接或https链接if (tp.TextRanges[tpcount].ClickAction.Address.ToLower().Contains("http") || tp.TextRanges[tpcount].ClickAction.Address.ToLower().Contains("https"))                                    {//为链接重新赋值tp.TextRanges[tpcount].ClickAction.Address = "https://baike.baidu.com/";//重新设置超链接文本tp.TextRanges[tpcount].Text = "百度百科";//删除超链接//tp.TextRanges[tpcount].ClickAction = null;                                    }                                }                            }                        }                    }                }            }//保存文档ppt.SaveToFile("ModifyHyperlink.pptx", FileFormat.Pptx2010);            System.Diagnostics.Process.Start("ModifyHyperlink.pptx");        }    }}

超链接修改结果:

超链接删除效果:

(本文完)

(0)

相关推荐

  • C# 处理PPT水印(三)—— 在PPT中添加多行(平铺)文本水印效果

    在PPT幻灯片中,可通过添加形状的方式,来实现类似水印的效果,可添加单一文本水印效果,即幻灯片中只有一个文本水印:也可以添加多行(平铺)文本水印效果,即幻灯片中以一定方式平铺排列多个文本水印效果.本文 ...

  • python编程操作office三剑客之PPT篇

    安装包 安装pip install python-pptx -i https://pypi.doubanio.com/simple/引用import pptx官方文档https://python-pp ...

  • 这十个欧美顶尖PPT工作室|你知道哪一个?

    编按: 国外的PPT大咖究竟有多厉害?他们为美国副总统制作幻灯片,也为世界500强的企业设计幻灯片.他们的PPT设计水平可以说遥遥领先世界了.本期,枣少爷为大家介绍10个欧美顶尖PPT工作室,让你大开 ...

  • 通过python-pptx模块操作ppt文件

    ppt通过其精美的可视化技巧以及良好的演示效果,成为了职场人士的必备技能.ppt的设计是一门大学问,无论是设计技巧,还是操作方法,都衍生出了专门的课程. 本文主要介绍python操作ppt的技巧,编程 ...

  • 如何设置幻灯片从当前页开始放映

    在PPT中,如何设置幻灯片从当前页开始放映呢? 打开一个PPT文档,如图所示. 单击选择需要开始放映的幻灯片. 然后单击放映. 选择当前页开始. 我们可以看到幻灯片已经设置好从当前页开始播放了.

  • 如何快速隐藏幻灯片

    在PPT中,放映时不想播放某幻灯片,但又不想将其删除,该如何隐藏这张幻灯片呢? 打开一个PPT文档,如图所示. 单击选中需要隐藏的幻灯片. 然后单击工具栏上的放映. 接着单击选择隐藏幻灯片. 5 我们 ...

  • 如何批量删除word中的超链接

    在我们完成那种不是特别重要的文档的时候,多数人喜欢直接到网上寻找类似文本,然后将文本复制粘贴到自己编辑的文档中.但是在网上复制的文本经常带有超链接,粘贴完成后的效果如下图所示.带有超链接的文本被用其他 ...

  • PPT中的PA插件如何删除

    ppt中我们有时候会安装一些插件,但是会导致软件非常的卡顿,这个时候就需要删除这些插件,如何删除呢?一起来看看吧. 1.我们要将之前安装好的pa插件进行删除. 2.选中文件选项卡,弹出界面点击--选项 ...

  • PPT中如何给文字添加动画?

    在ppt中,除了给图形添加动画之外,还可以给文字添加,下面来看看详细的操作步 骤吧! 1.我们首先输入一行文字, 2.点击选中文本框,点击动画选项卡. 3.然后给文字添加一个动画的效果. 4.下面注意 ...

  • PPT中如何将添加的日期设置为自动更新呢?

    PPT中如何将添加的日期设置为自动更新呢?

  • ppt中如何给文字添加着重号?

    首先,单击工具栏插入下的文本框,单击横向文本框. 在文本框当中输入标题文字,单击工具栏插入下的符号,在下拉菜单下选择其他符号. 字体选择Verdana,子集中选择广义标点,然后选择着重号,单击插入,可 ...

  • Linux 用户 和 用户组 管理 (添加、删除、修改)及说明

    From:http://www.cnblogs.com/xd502djj/archive/2011/11/23/2260094.html 鸟哥官网 Linux 帐号管理与 ACL 权限设定:http: ...

  • PowerPoint 2013中怎么删除PPT备注信息

    PowerPoint 2013中怎么删除PPT备注信息?我们在PPT提交给客户前,有时需要将备注信息删除,如果备注信息太多,逐条删会很麻烦.其实只需单击"文件"选项卡中的" ...

  • python测试开发django-120.bootstrap-table表格添加操作按钮(查看/修改/删除)

    前言 在table表格每一项后面添加3个操作按钮:查看/修改/删除,实现效果 新增操作项 接着前面这篇https://www.cnblogs.com/yoyoketang/p/15242055.htm ...