彩票走势图

PPT处理控件Aspose.Slides 2月最新版上线!示例演示新功能—获取表格单元格中文本位置

原创|产品更新|编辑:李显亮|2020-02-19 13:33:34.320|阅读 458 次

概述:Aspose.Slides For .Net更新至v20.2,支持获取表格单元格文本框架内的文字和部分的大小,允许直接在源文档上更新自定义文档属性,修复转换为PDF的时间过长等问题,欢迎下载体验。

# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>

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

Aspose.Slides for .NET迎来2020年2月更新 v20.2,支持获取表格单元格文本框架内的文字和部分的大小,允许直接在源文档上更新自定义文档属性,修复转换为PDF的时间过长等问题。(点击下方按钮即可下载)

下载Aspose.Slides最新版

具体更新内容

key 概述 类别
SLIDESNET-41674 从PPT到PDF的转换速度极慢 功能
SLIDESNET-40977 支持获取表格单元格文本框架内的文字和部分的大小 功能
SLIDESNET-36546 支持直接在源文档上更新自定义文档属性 功能
更多更新修复请参考:【Aspose.Slides for .NET v20.2更新说明】


新功能演示——获取表格单元格中的文本位置

添加的方法:

  • IPortion.GetRect():此方法扩展并实际上替换了现在标记为过时的方法IPortion.GetCoordinates()。
  • IPortion.GetRect()IParagraph.GetRect():可以应用于表单元格中的文本。以下示例显示了属性如何工作。

假设我们有一个表格,里面有一些文本,附近有一个简单的AutoShape。

PPT处理控件Aspose.Slides 2月最新版上线!示例演示新功能—获取表格单元格中文本位置

下面的代码片段生成了这些对象:

			
using (Presentation pres = new Presentation())
{
ITable tbl = pres.Slides[0].Shapes.AddTable(50, 50, new double[] { 50, 70 }, new double[] { 50, 50, 50 });
IParagraph paragraph0 = new Paragraph(); paragraph0.Portions.Add(new Portion("Text "));
IParagraph paragraph1 = new Paragraph();
paragraph0.Portions.Add(new Portion("in0")); paragraph0.Portions.Add(new Portion(" Cell")); paragraph1.Text = "On0";
paragraph2.Portions.Add(new Portion("col0"));
IParagraph paragraph2 = new Paragraph(); paragraph2.Portions.Add(new Portion("Hi there ")); ICell cell = tbl.Rows[1][1]; cell.TextFrame.Paragraphs.Clear();
IAutoShape autoShape = pres.Slides[0].Shapes.AddAutoShape(ShapeType.Rectangle, 400, 100, 60, 120);
cell.TextFrame.Paragraphs.Add(paragraph0); cell.TextFrame.Paragraphs.Add(paragraph1); cell.TextFrame.Paragraphs.Add(paragraph2); autoShape.TextFrame.Text = "Text in shape";
}

下面的源代码片段将在所有段落中添加一个黄色框,并在包含子字符串“ 0”的所有部分中添加一个蓝框。

1)首先,我们获得表格单元格左上角的坐标:

			
double x = tbl.X + cell.OffsetX;
double y = tbl.Y + cell.OffsetY;

2)然后,我们使用IParagrap.GetRect()和IPortion.GetRect()方法向部分和段落添加框架:

				
foreach (IParagraph para in cell.TextFrame.Paragraphs)
{ if (para.Text == "") continue;
IAutoShape shape =
RectangleF rect = para.GetRect();
rect.X + (float)x, rect.Y + (float)y, rect.Width, rect.Height);
pres.Slides[0].Shapes.AddAutoShape(ShapeType.Rectangle,
shape.LineFormat.FillFormat.SolidFillColor.Color = Color.Yellow;
shape.FillFormat.FillType = FillType.NoFill; shape.LineFormat.FillFormat.FillType = FillType.Solid;
rect = portion.GetRect();
foreach (IPortion portion in para.Portions) { if (portion.Text.Contains("0")) { shape =
shape.FillFormat.FillType = FillType.NoFill;
pres.Slides[0].Shapes.AddAutoShape(ShapeType.Rectangle, rect.X + (float)x, rect.Y + (float)y, rect.Width, rect.Height); } }
}

3)现在,我们应该在AutoShape段落中添加一个框架:

			
foreach (IParagraph para in autoShape.TextFrame.Paragraphs)
{
IAutoShape shape =
RectangleF rect = para.GetRect();
pres.Slides[0].Shapes.AddAutoShape(ShapeType.Rectangle,
rect.X + autoShape.X, rect.Y + autoShape.Y, rect.Width, rect.Height);
shape.LineFormat.FillFormat.SolidFillColor.Color = Color.Yellow;
shape.FillFormat.FillType = FillType.NoFill; shape.LineFormat.FillFormat.FillType = FillType.Solid;
}

结果:

PPT处理控件Aspose.Slides 2月最新版上线!示例演示新功能—获取表格单元格中文本位置

还想要更多吗?您可以点击阅读【2019 · Aspose最新资源整合】查找需要的教程资源。如果您有任何疑问或需求,请随时加入Aspose技术交流群(642018183),我们很高兴为您提供查询和咨询


标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@pclwef.cn


为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP