C#でWord文書に図形とグループ図形を挿入する方法

Word文書を作成する場合、文書にいくつかの形状を追加する必要がある場合があります。追加後、各形状は独立していますが、形状が多い場合は、これらの形状を1つにまとめて、簡単に操作することもできます。この記事では、C#およびSpire.Docコンポーネントを使用して、Word文書に形状を挿入し、形状を結合する方法を紹介します。

コードを使用する前に、以下のものが必要です:

  1. Spire.Docをダウンロードし、インストールフォルダーからアプリケーションにSpire.Doc.dllを参照します
  2. 名前空間を参照します:

using System.Drawing;

using Spire.Doc;

using Spire.Doc.Documents;

using Spire.Doc.Fields;

 

形状を挿入します:

using System.Drawing;

using Spire.Doc;

using Spire.Doc.Documents;

using Spire.Doc.Fields;

namespace WordShape

{

    class Program

    {      

               static void Main(string args)

        {

            //Documentインスタンスを作成する

            Document doc = new Document();

 

            //セクションを追加する

            Section sec = doc.AddSection();

 

            //段落を追加する

            Paragraph para1 = sec.AddParagraph();

 

            //長方形を挿入してサイズを設定する

            ShapeObject shape1 = para1.AppendShape(50, 100, ShapeType.Rectangle);

 

            //塗りつぶしの色を設定する

            shape1.FillColor = Color.LightSkyBlue;

 

            //形状の位置を指定する

            shape1.HorizontalPosition = 50;

            shape1.VerticalPosition = 30;

 

            //楕円形を挿入してサイズを設定する

            ShapeObject shape2 = para1.AppendShape(100, 100, ShapeType.Ellipse);

 

            //塗りつぶしの色を設定する

            shape2.FillColor = Color.LightSkyBlue;

 

            //形状の位置を指定する

            shape2.HorizontalPosition = 150;

            shape2.VerticalPosition = 30;

 

            //三角形を挿入してサイズを設定する

            ShapeObject shape3 = para1.AppendShape(100, 100, ShapeType.Triangle);

 

            //塗りつぶしの色を設定する

            shape3.FillColor = Color.LightSkyBlue;

 

            //形状の位置を指定する

            shape3.HorizontalPosition = 300;

            shape3.VerticalPosition = 30;

 

            //文書を保存する 

            doc.SaveToFile("InsertShapes.docx", FileFormat.Docx2010);

        }

    }

}

最終の効果は以下のようになります:

f:id:uha_noki:20211014160717p:plain

形状グループを挿入します:

using System.Drawing;

using Spire.Doc;

using Spire.Doc.Documents;

using Spire.Doc.Fields;

namespace WordShape

{

    class Program

    {

        static void Main(string args)

        {

            //Documentインスタンスを作成する

            Document doc = new Document();

 

            //セクションを追加する

            Section sec = doc.AddSection();

 

            //段落を追加する

            Paragraph para = sec.AddParagraph();

 

            //形状グループを作成してサイズを設定する

            ShapeGroup group = para.AppendShapeGroup(300, 200);

 

            //形状グループに長方形を追加する

            group.ChildObjects.Add(new ShapeObject(doc, ShapeType.Rectangle)

            {

                Width = 50,

                Height=200,

                HorizontalPosition=225,

                VerticalPosition=50,

                FillColor=Color.LightSkyBlue,

            });

 

            //形状グループに楕円形を追加する

            group.ChildObjects.Add(new ShapeObject(doc, ShapeType.Ellipse)

            {

                Width=200,

                Height=200,

                HorizontalPosition=150,

                VerticalPosition=150,

                FillColor=Color.LightSkyBlue,

            });

 

            //形状グループに長方形を追加する

            group.ChildObjects.Add(new ShapeObject(doc, ShapeType.Rectangle)

            {

                Width=200,

                Height=200,

                HorizontalPosition=150,

                VerticalPosition=250,

                FillColor=Color.LightSkyBlue,

            });

 

            //文書を保存する

            doc.SaveToFile("InsertShapegroups.docx", FileFormat.Docx2010);

        }

    }

}

最終の効果は以下のようになります:

f:id:uha_noki:20211014160750p:plain

すごく簡単で便利でしょう、では最後まで読んでいただき、誠にありがとうございます。