DioDocs for Excel では、ワークシート内の図形をグループ化およびその解除を行うことができます。図形をまとめて特定のアクションを実行する際、図形をグループ化できます。たとえば、グループ化された図形に同じスタイルを適用でき、整列、回転、コピー、または貼り付けることができます。これにより、時間を節約するだけではなく、すべての図形で一貫性の維持を実現できます。
IShapeRangeインタフェースのGroupメソッドを使用して、いくつかの図形をグループ化できます。IShapeRangeインタフェースは、グループ化する図形の範囲を表します。グループ化された図形は、単一の図形として動作します。
図形をグループ化する方法については、次のサンプルコードを参照してください。
C# |
コードのコピー
|
---|---|
// ワークブックを初期化します Workbook workbook = new Workbook(); // 既定のワークシートを取得します IWorksheet worksheet = workbook.Worksheets[0]; // アクティブなワークシートの図形コレクションを作成します IShapes shapes = workbook.ActiveSheet.Shapes; // 図形コレクションに図形を追加します IShape ShapeBegin = shapes.AddShape(AutoShapeType.Wave, 10, 10, 100, 100); IShape EndBegin = shapes.AddShape(AutoShapeType.RoundedRectangle, 200, 200, 100, 100); // 図形コレクションにコネクタ図形を追加します IShape ConnectorShape = shapes.AddConnector(ConnectorType.Straight, 10, 10, 101, 101); // コネクタ図形を使用してShapeBeginおよびEndBegin図形を接続します ConnectorShape.ConnectorFormat.BeginConnect(ShapeBegin, 3); ConnectorShape.ConnectorFormat.EndConnect(EndBegin, 0); // 図形コレクションにIsoscelesTriangle図形を追加します shapes.AddShape(AutoShapeType.IsoscelesTriangle, 370.8, 50.8, 81.6, 102.0); // shpRangeコレクションを作成して、配列で指定された特定の図形をグループ化します IShapeRange shpRange = shapes.Range[new string[3] { shapes[0].Name, shapes[1].Name, shapes[2].Name }]; // 図形をグループ化します IShape grouped = shpRange.Group(); // グループ化された図形のスタイルを設定します grouped.Line.Color.RGB = System.Drawing.Color.DarkOrange; grouped.Fill.Color.RGB = System.Drawing.Color.LightGreen; Console.WriteLine("Group Name is: " + grouped.Name); // XLSXファイルに保存します workbook.Save(@"GroupedShapes.xlsx", SaveFileFormat.Xlsx); |
IShapeインタフェースのUngroupメソッドを使用して、指定された範囲内の図形のグループを解除できます。
図形のグループ化を解除する方法については、次のサンプルコードを参照してください。
C# |
コードのコピー
|
---|---|
// ワークブックを初期化します Workbook workbook = new Workbook(); // ワークブックを開きます workbook.Open(@"9-GroupedShapes.xlsx"); IShapes shapes = workbook.Worksheets[0].Shapes; // 図形のグループ化を解除します for (int i = 0; i < shapes.Count; i++) { if (shapes[i].Type == ShapeType.Group) // または、 if (shapes[i].Name == "Group 1") shapes[i].Ungroup(); } // または、GroupNameをUngroupメソッドに渡します // shapes["Group 1"].Ungroup(); // ワークブックを XLSXファイルに保存します workbook.Save(@"10-UnGroupedShapes.xlsx", SaveFileFormat.Xlsx); |