PPT演示控件Aspose.Slides for .NET v19.7发布上线! | 附下载

Aspose.Slides for .NET是一个PPT演示控件,使应用程序能够读取,编写,修改和转换PowerPoint演示文稿。作为独立的API,它提供了管理PowerPoint关键功能的功能,例如管理文本,形状,表格和动画,向幻灯片添加音频和视频,预览幻灯片等,而无需Microsoft PowerPoint。

Aspose.Slides for .NET更新至v19.7,新增支持在图表数据工作表中清除特定图表系列数据点数据,支持段落级编辑的动画效果API,修复多项Bug!>>免费下载Aspose.Slides for .NET最新试用版

新增与改善
key概述类别
SLIDESNET-41223以常用方式获取形状的布局样式新功能
SLIDESNET-40010在图表中设置外部工作簿的外部工作簿路径新功能
SLIDESNET-33910在一个位置为图表实体设置字体相关属性新功能
SLIDESNET-33742为图表区域设置字体相关属性新功能
SLIDESNET-34685linewithmarker图表的默认自动标记符号新功能
SLIDESNET-35440仅支持在图表数据工作表中清除特定图表系列数据点数据新功能
SLIDESNET-36453支持段落级编辑的动画效果API新功能
SLIDESNET-41185将PPTX转换为PdfNotes时,质量很差增强
SLIDESNET-41215OLE嵌入式对象支持OpenDocument增强
SLIDESNET-35712启用和禁用图表系列值增强
SLIDESNET-41166PowerPoint的页码会增加,即使它只是幻灯片注释的延续增强
SLIDESNET-41132导出的图像和PDF中缺少渐变填充颜色Bug修复
SLIDESNET-41202转换后的数据系列和部分图例丢失Bug修复
SLIDESNET-41193保存表示输出文件后损坏Bug修复
SLIDESNET-41234PDF注意BottomFull位置输出不正确Bug修复

· · · · · ·

更多更新细则请参考:【Aspose.Slides for .NET v19.7更新说明】

 
▲添加了另一个选项以设置外部工作簿路径

参数updateChartData定义是否加载excel工作簿。如果value为false,则仅更新工作簿路径。不会从目标工作簿加载和更新图表数据。当目标工作簿尚不存在或不可用时,它很有用。如果值为true,则将按照常规方法SetExternalWorkbook更新目标工作簿中的图表数据。

using (Presentation pres = new Presentation())
{
      IChart chart = pres.Slides[0].Shapes.AddChart(ChartType.Pie, 50, 50, 400, 600, true);
      IChartData chartData = chart.ChartData;
 
      (chartData as ChartData).SetExternalWorkbook("http://path/doesnt/exists", false);
 
}

在某些情况下,用户必须自己实现工作簿数据的检索。例如,如果访问受密码保护的源。在这种情况下,用户可以使用IResourceLoadingCallback。

public void SetExternalWorkbookMethodNetwork()
{
   string externalWbPath = @"http://606178d2.ngrok.io/webgrind/styles/2.xlsx";
   LoadOptions opts = new LoadOptions();
   opts.ResourceLoadingCallback = new WorkbookLoadingHandler();
 
   using (Presentation pres = new Presentation(opts))
   {
      IChart chart = pres.Slides[0].Shapes.AddChart(ChartType.Pie, 50, 50, 400, 600, false);
      IChartData chartData = chart.ChartData;
 
      (chartData as ChartData).SetExternalWorkbook(externalWbPath);
   }
}
 
 
private class WorkbookLoadingHandler : IResourceLoadingCallback
{
   public ResourceLoadingAction ResourceLoading(IResourceLoadingArgs args)
   {
      string workbookPath = args.OriginalUri;
 
      if (workbookPath.IndexOf(':') > 1 && !workbookPath.StartsWith("file:///")) // schemed path
      {
         try
         {
            WebRequest request = WebRequest.Create(workbookPath);
            request.Credentials = new System.Net.NetworkCredential("testuser", "testuser");
            using (WebResponse response = request.GetResponse())
            using (Stream responseStream = response.GetResponseStream())
            {
                byte[] buffer = BlobDownloadManager.Download(responseStream);
                args.SetData(buffer);
                return ResourceLoadingAction.UserProvided;
            }
          }
          catch (Exception ex)
          {
             throw new InvalidOperationException(ex.ToString());
          }
      }
      else
      {
          return ResourceLoadingAction.Default;
      }
   }
}

 

▲Sequence类和ISequence接口中添加了新的AddEffect方法

在ISequence 接口和Sequence 类中添加了AddEffect(IParagraph段落,EffectType effectType,EffectSubtype子类型,EffectTriggerType triggerType)方法。它允许为单个段落添加新的动画效果。

using (Presentation presentation = new Presentation(path + "input.pptx")
{
 // select paragraph to add effect
 IAutoShape autoShape = (IAutoShape)presentation.Slides[0].Shapes[0];
 IParagraph paragraph = autoShape.TextFrame.Paragraphs[0];
 
 // add Fly animation effect to selected paragraph
 IEffect effect = presentation.Slides[0].Timeline.MainSequence.AddEffect(paragraph, EffectType.Fly, EffectSubtype.Left, EffectTriggerType.OnClick);
}

转载于:https://my.oschina.net/u/4087915/blog/3080578

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值