C# 操作Excel图形——绘制、读取、隐藏、删除图形

一、概述

数据透视表(Pivot Table)是一种交互式的表,可以进行某些计算,如求和与计数等,可动态地改变透视表版面布置,也可以重新安排行号、列标和页字段。当改变版面布置时,数据透视表也会按照新的布置来进行更新,可以说是一个功能强大的数据分析工具。因此,本篇文章将介绍在C# 中关于Excel数据透视表的操作示例,示例内容主要包含以下要点:

1. 创建透视表

     (1)创建数据缓存

     (2)创建数据透视表

金沙官网线上,     (3)添加行字段和列字段

     (4)添加值字段

     (5)设置样式

2.  设置行折叠、展开

3.  设置字段升序、降序

4.  删除透视表

简介

本篇文章将介绍C# 如何处理Excel图形相关的问题,包括以下内容要点:

1.绘制图形

   1.1 绘制图形并添加文本到图形

   1.2 添加图片到图形

   1.3 设置图形阴影效果

  1. 提取图形中的文本、图片

  2. 设置图形的显示、隐藏

  3. 删除图形

   4.1删除指定图形

   4.2 删除所有图形

二、准备工具

金沙官网线上 1

PS:安装后,注意在项目中引用Spire.XLS.dll再进行代码操作,dll文件在安装路径下的Bin文件夹中获取。

所需工具

PS: 下载安装该类库后,注意在项目程序中添加引用Spire.Xls.dll文件(dll文件可在安装路径下的Bin文件夹中获取)

金沙官网线上 2

注:Spire.xls能支持的图形种类很多,常见的Office Excel中的图形,这个类库也都能实现,

金沙官网线上 3

三、示例操作

示例代码(供参考)

1.创建透视表

C#

            //创建一个Workbook类实例,并加载Excel文档
            Workbook workbook = new Workbook();
            workbook.LoadFromFile("test.xlsx");

            //获取第一个工作表
            Worksheet sheet = workbook.Worksheets[0];

            //为需要汇总和分析的数据创建缓存
            CellRange dataRange = sheet.Range["A1:D10"];
            PivotCache cache = workbook.PivotCaches.Add(dataRange);

            //使用缓存创建数据透视表,并指定透视表的名称以及在工作表中的位置
            PivotTable pivotTable = sheet.PivotTables.Add("PivotTable", sheet.Range["A12"], cache);

            //添加行字段
            var r1 = pivotTable.PivotFields["月份"];
            r1.Axis = AxisTypes.Row;

            var r2 = pivotTable.PivotFields["厂商"];
            r2.Axis = AxisTypes.Row;

            //设置行字段的标题
            pivotTable.Options.RowHeaderCaption = "月份";

            //添加列字段
            var col1 = pivotTable.PivotFields["产品"];
            col1.Axis = AxisTypes.Column;          

            //设置列字段的标题
            pivotTable.Options.ColumnHeaderCaption = "产品";

            //添加值字段
            pivotTable.DataFields.Add(pivotTable.PivotFields["总产量"], "求和项:总产量", SubtotalTypes.Sum);

            //设置透视表的样式(Spire.XLS共支持80余种Excel内置的数据透视表样式)
            pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleDark13;

            //保存并打开文档
            workbook.SaveToFile("数据透视表.xlsx", ExcelVersion.Version2013);
            System.Diagnostics.Process.Start("数据透视表.xlsx");

测试结果:

金沙官网线上 4

1. 绘制图形

【C#】

using System.Drawing;
using Spire.Xls;
using Spire.Xls.Core;

namespace Add_shapes_to_Excel
{
    class Program
    {
        static void Main(string[] args)
        {
            //创建实例
            Workbook workbook = new Workbook();
            //获取第一个工作表
            Worksheet sheet = workbook.Worksheets[0];

            //添加“太阳”形状的图形,并填充颜色
            IPrstGeomShape Triangle = sheet.PrstGeomShapes.AddPrstGeomShape(2, 2, 170, 160, PrstGeomShapeType.Sun);
            Triangle.Fill.ForeColor = Color.Orange;
            Triangle.Fill.FillType = ShapeFillType.SolidColor;            
            Triangle.Text = "IT'S A SUNNY DAY";//添加文本

            //添加“禁止”标志的图形,并填充渐变颜色
            IPrstGeomShape heart = sheet.PrstGeomShapes.AddPrstGeomShape(2, 7, 140, 140, PrstGeomShapeType.NoSmoking);
            heart.Fill.ForeColor = Color.Red;
            heart.Fill.FillType = ShapeFillType.Gradient;

            //添加云朵形状的图形
            IPrstGeomShape Cloud = sheet.PrstGeomShapes.AddPrstGeomShape(15, 2, 160, 160, PrstGeomShapeType.Cloud);           
            //设置图形阴影效果
            Cloud.Shadow.Angle = 90;
            Cloud.Shadow.Distance = 10;
            Cloud.Shadow.Size = 100;
            Cloud.Shadow.Color = Color.SteelBlue;
            Cloud.Shadow.Blur = 30;
            Cloud.Shadow.Transparency = 1;
            Cloud.Shadow.HasCustomStyle = true;

            //添加五角星形状的图形,并加载图片来填充图形
            IPrstGeomShape cloud = sheet.PrstGeomShapes.AddPrstGeomShape(15, 7, 160, 160, PrstGeomShapeType.Star5);
            cloud.Fill.CustomPicture(Image.FromFile("sm.png"), "sm.png");
            cloud.Fill.FillType = ShapeFillType.Picture;

            //保存并打开文档
            workbook.SaveToFile("AddShapes.xlsx", ExcelVersion.Version2013);
            System.Diagnostics.Process.Start("AddShapes.xlsx");
        }
    }
}

图形插入效果:

金沙官网线上 5

本文由金沙官网线上发布于编程,转载请注明出处:C# 操作Excel图形——绘制、读取、隐藏、删除图形

您可能还会对下面的文章感兴趣: