麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

使用 Aspose.Slide 獲取PPT中的所有幻燈片的標(biāo)題

2019-11-17 02:26:16
字體:
供稿:網(wǎng)友

使用 aspose.Slide 獲取PPT中的所有幻燈片的標(biāo)題

本文使用的是第三方類庫(kù) Aspose.Slide,如果你使用的是Openxml可以看下面的鏈接,原理是相同的,這個(gè)文章里也有對(duì)Xml標(biāo)簽的詳細(xì)解釋。

如何:獲取演示文稿中的所有幻燈片的標(biāo)題

原理:

  原理說白了很簡(jiǎn)單,明白了原理大家都寫得出來。

  簡(jiǎn)單說,一個(gè)PPT里有多個(gè)幻燈片,一個(gè)幻燈片里有多個(gè)Shape, Shape會(huì)有一個(gè)Plcaeholder,Placeholder的Type屬性來決定是否是標(biāo)題。

  Aspose的對(duì)像ipresentation->Slide->Shape->PlaceHolder

代碼:

判斷Shape是一個(gè)Title,采用了擴(kuò)展方法的方式:

    public static class ShapeExtension    {        public static bool IsTitleShape(this IShape p_shape)        {            if (p_shape == null)            {                return false;            }            var placeholder = p_shape.Placeholder;            if (placeholder != null)            {                switch (placeholder.Type)                {                    // Any title shape.                    case PlaceholderType.Title:                    // A centered title.                    case PlaceholderType.CenteredTitle:                        return true;                    default:                        return false;                }            }            return false;        }    }
View Code

我們定義一個(gè)SlideTitle來存放

    public class SlideTitle    {        public int PageNum { get; set; }        public int TitleCount { get; set; }        public string[] Titles { get; set; }    }
View Code

再擴(kuò)展IPResentation對(duì)象,增加一個(gè)GetTitles的方法

    public static class PresentationExtension    {        public static IEnumerable<SlideTitle> GetTitles(this IPresentation p_presentation)        {            var presentation = p_presentation;            if (presentation != null)            {                foreach (var slide in presentation.Slides)                {                    List<string> titles = new List<string>();                    foreach (var shape in slide.Shapes)                    {                        if (!shape.IsTitleShape())                        {                            continue;                        }                        var autoShape = shape as AutoShape;                        if (autoShape == null)                        {                            continue;                        }                        titles.Add(autoShape.TextFrame.Text);                    }                    var title = new SlideTitle()                    {                        PageNum = slide.SlideNumber,                        TitleCount = titles.Count,                        Titles = titles.ToArray()                    };                    yield return title;                }            }        }    }

總結(jié):

  這東西本身,很簡(jiǎn)單的東西,主要就是判斷哪個(gè)屬性。幸好查到了微軟的那篇文章。

本文原創(chuàng)

轉(zhuǎn)載請(qǐng)注明出處:http://www.companysz.com/gaoshang212/p/4440807.html


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 久久久久久久久久性 | 国产精品视频六区 | 天天操天天看 | h色在线观看 | 国产一区二区国产 | 一区二区三高清 | 久久老司机精品视频 | 操碰网 | 欧美日本一区二区 | 久久综合伊人 | 国产免费一区二区三区最新不卡 | 97视频 | 91网页视频入口在线观看 | 欧美日韩亚洲成人 | 主播粉嫩国产在线精品 | 黄色大片网 | 日韩激情 | 一级免费大片 | 美女网站黄在线观看 | 国产成人自拍小视频 | 一级免费在线视频 | 久久久久久三区 | 亚洲国产精品久久久 | 在线中文资源免费 | 久久久久亚洲精品 | 成人国产精品免费 | 激情亚洲一区二区 | 俄罗斯hdxxx| 亚洲精品在线观看免费 | 被啪羞羞视频在线观看 | 青青草华人在线 | 国产精品一区二区日韩 | 欧美日韩免费在线观看视频 | 亚洲精品一区国产精品丝瓜 | 日本羞羞影院 | 在线免费av网站 | 红杏亚洲影院一区二区三区 | 黄色网址你懂的 | jizzjizzjizz少妇| 成人激情视频网 | 欧美另类激情 |