从Power Point中表格的表格单元格获取文本

时间:2019-01-31 14:03:04

标签: c# .net linq-to-xml

如何从幻灯片中获取表格并使用c#获取表格中每个单元格的文本。

我想在幻灯片幻灯片表中搜索给定的关键字。我需要将关键字与表格单元格的每个段落进行比较。我尝试了以下代码,但是即使ppt的幻灯片包含表格,它也不会进入循环:

foreach (Table table in shape.Descendants().OfType<Table>())
{
    var rows = 
    table.Descendants<DocumentFormat.OpenXml.Drawing.TableRow();

    foreach(TableRow row in rows)
    {

        var cells = 
        row.Descendants<DocumentFormat.OpenXml.Drawing.TableCell>();
        foreach (TableCell cell in cells)
        {
            foreach (Paragraph paragraph in 
                     cell.Descendants().OfType<Paragraph>())
            {
                foreach (Run run in paragraph.Elements<Run>())
                {

          if(run.Text.InnerText.ToLower().Contains(searchText.ToLower()))
          {
                        if (!(slideNos.Any(x => x == slideNo)))
                        {
                            slideNos.Add(slideNo);
                        }
                        break;
                    }
                }
          }

        }
    }
}

0 个答案:

没有答案