AYU MAX

プログラミングとか作ったもの

PPTX作成機能 とりあえず版

進捗

Markdownを読み込んでパワポを作るC#ライブラリの開発だが、
とりあえず最低限の機能はできた。

github.com

現時点での機能はこんな感じ

  • スライドサイズは4x3固定(16:9も対応したい)
  • 1枚目は必ずタイトルページ
  • 2枚目以降は自由に追加可能
  • 追加するスライドはスライドレイアウトの指定が可能
  • スライドに入れれるのはテキストのみでイメージや図形は不可

以下のようなコードを書くと *.pptxファイルが作成される。

    public void Run(string PPTXFilePath)
    {
        var settings = new PPTXSetting()
        {
            SlideSize = EPPTXSlideSizeValues.Screen4x3,
            Title = "サンプルファイルタイトル",
            SubTitle = "2018/5/3 ayumax"
        };

        using (PPTXDocument document = new PPTXDocument(PPTXFilePath, settings))
        {
            document.Slides = new List<PPTXSlide>()
            {
                new PPTXSlide()
                {
                    SlideLayout = settings.SlideLayouts[EPPTXSlideLayoutType.TitleAndContents],
                    Title = new PPTXText("コンテンツ1ページ目"),
                    Bodys = new List<PPTXText>()
                    {
                        new PPTXText("本文です。\nここに書いていく")
                    }
                },
                new PPTXSlide()
                {
                    SlideLayout = settings.SlideLayouts[EPPTXSlideLayoutType.TwoContents],
                    Title = new PPTXText("コンテンツ2ページ目"),
                    Bodys = new List<PPTXText>()
                    {
                        new PPTXText("パワーポイント2枚目のテキスト1")
                        new PPTXText("テキスト2\r\n2行目")
                    }
                }
            };
        }               
    }   

f:id:ayuma0913:20180506230903j:plain

今の課題

まだまだ完成には程遠いけど、今見えている範囲だと以下の3つ

  • スライドレイアウトを白紙にするとテキストの自由な配置ができない
  • イメージファイルの差し込み機能がない
  • レイアウトとテーマがパワポデフォルトのものなのでダサい

とりあえず全体を作ることを優先したいので、
パワポ作成機能はイメージの差し込みくらいまで作って、
次はMarkdownの読み込み部分に入ろう。