我必须从智能艺术中找到以下信息。 SmartArt类型, SmartArt名称及其中的文字
从上面的图片我想找到以下信息
使用或不使用互操作 到现在为止,通过使用OpenXML,我只能获得智能艺术的文本。
var diagramDataPartsList = slidePart.DiagramDataParts;
if (diagramDataPartsList.Count() > 0)
{
foreach (var diagramDataParts in diagramDataPartsList)
{
var text = diagramDataParts.DataModelRoot.PointList.InnerText;
if (!string.IsNullOrEmpty(text))
{
Console.WriteLine(text.ToString());
}
}
}
答案 0 :(得分:2)
我从here得到了答案 答案是
if (shape.HasSmartArt == MsoTriState.msoTrue)
{
var val1 = shape.SmartArt;
string name = val1.Layout.Name;
string category = val1.Layout.Category;
string text1 = "";
foreach (SmartArtNode node in val1.AllNodes)
{
text1 += node.TextFrame2.TextRange.Text;
}
Console.WriteLine("Smartart : {0} \tCategory : {1}\t Name : {2} text : {3}", (i++).ToString(), category, name, text1);
}