填充背景色,一般可以选择多种不同样式来填充背景,包括填充为纯色背景、渐变背景、图片背景或者纹理背景等。下面的内容将分别介绍通过C#来设置Excel中图表背景色、以及图表中的图例背景色的方法。

使用工具Spire.XLS for .NET

dll引用:下载安装后,注意在程序中添加引用Spire.Xls.dll(dll文件在安装路径下的bin文件夹中获取)

【示例1】填充图表背景色

测试文档如下:

Step1:加载文档

//实例化Workbook类的对象
Workbook workbook = new Workbook();
//加载测试文档
workbook.LoadFromFile("sample.xlsx");

Step2:获取图表

//获取第一个工作表中的第一个图表
Worksheet ws = workbook.Worksheets[];
Chart chart = ws.Charts[];

Step3:填充图表背景色(纯色)

 //设置图表的背景填充色(纯色)
chart.ChartArea.Fill.ForeColor = Color.LightSkyBlue;
////设置图表绘图区域的背景填充色(纯色)
///chart.PlotArea.ForeGroundColor =System.Drawing.Color.LightYellow;

Step4:加载图片填充图表背景

// 加载图片,填充整个图表区域
chart.ChartArea.Fill.CustomPicture(Image.FromFile("tp.png"), "None");
//设置绘图区域的图片填充的透明度
chart.PlotArea.Fill.Transparency = 0.8;
////加载图片,仅填充图表中的绘图区域
//chart.PlotArea.Fill.CustomPicture(Image.FromFile("tp.png"), "None");

Step5:保存文档

workbook.SaveToFile("result.xlsx", ExcelVersion.Version2010);

纯色背景色设置效果:

1.填充整个图表

2.填充图表中的绘图区域

图片填充效果:

1.填充整个图表

2.填充图表中的绘图区域

全部代码:

using Spire.Xls;
using Spire.Xls.Core.Spreadsheet.Charts;
using System.Drawing; namespace FillChartWithImg_XLS
{
class Program
{
static void Main(string[] args)
{
//实例化Workbook类的对象
Workbook workbook = new Workbook();
//加载测试文档
workbook.LoadFromFile("sample.xlsx"); //获取第一个工作表中的第一个图表
Worksheet ws = workbook.Worksheets[];
Chart chart = ws.Charts[]; //设置图表的背景填充色(纯色)
chart.ChartArea.Fill.ForeColor = Color.LightSkyBlue;
//设置图表绘图区域的背景填充色(纯色)
//chart.PlotArea.ForeGroundColor = System.Drawing.Color.LightYellow; //// 加载图片,填充整个图表区域
//chart.ChartArea.Fill.CustomPicture(Image.FromFile("tp.png"), "None");
////设置绘图区域的图片填充的透明度
//chart.PlotArea.Fill.Transparency = 0.8; ////加载图片,仅填充图表中的绘图区域
//chart.PlotArea.Fill.CustomPicture(Image.FromFile("tp.png"), "None"); //保存文档
workbook.SaveToFile("result3.xlsx", ExcelVersion.Version2010);
System.Diagnostics.Process.Start("result3.xlsx");
}
}
}

【示例2】填充图表中的图例背景色

测试图表:

Step1:加载文档

//实例化Workbook类的对象,并加载测试文档
Workbook workbook = new Workbook();
workbook.LoadFromFile("test.xlsx");

Step2:获取图表

//获取工作表中的第一个图表
Worksheet ws = workbook.Worksheets[];
Spire.Xls.Chart chart = ws.Charts[];

Step3:单色填充图例背景

//填充图例背景色
XlsChartFrameFormat x = chart.Legend.FrameFormat as XlsChartFrameFormat;
//单色填充
x.Fill.FillType = ShapeFillType.SolidColor;
x.ForeGroundColor = Color.Gainsboro;

Step4:渐变色填充图例背景

//渐变色填充
x.Fill.FillType = ShapeFillType.Gradient;
x.ForeGroundColor = Color.AliceBlue;
x.BackGroundColor = Color.Bisque;

Step5:纹理填充图例背景

//纹理填充
x.Fill.FillType = ShapeFillType.Texture;
x.Fill.Texture = GradientTextureType.Bouquet;

Step6:加载图片填充图例背景

//图片填充
x.Fill.CustomPicture("img.png");

Step7:保存文档

workbook.SaveToFile("output.xlsx", ExcelVersion.Version2010);

图例背景色填充效果:

1.单色填充效果

2.渐变填充效果

3.纹理填充效果

4.图片填充效果

全部代码:

using Spire.Xls;
using Spire.Xls.Charts;
using Spire.Xls.Core.Spreadsheet.Charts;
using System.Drawing; namespace SetFontOfLegendInChart_XLS
{
class Program
{
static void Main(string[] args)
{
//实例化Workbook类的对象,并加载测试文档
Workbook workbook = new Workbook();
workbook.LoadFromFile("test.xlsx"); //获取工作表中的第一个图表
Worksheet ws = workbook.Worksheets[];
Spire.Xls.Chart chart = ws.Charts[]; //填充图例背景色
XlsChartFrameFormat x = chart.Legend.FrameFormat as XlsChartFrameFormat;
//单色填充
x.Fill.FillType = ShapeFillType.SolidColor;
x.ForeGroundColor = Color.Gainsboro; ////渐变色填充
//x.Fill.FillType = ShapeFillType.Gradient;
//x.ForeGroundColor = Color.AliceBlue;
//x.BackGroundColor = Color.Bisque; ////纹理填充
//x.Fill.FillType = ShapeFillType.Texture;
//x.Fill.Texture = GradientTextureType.Bouquet; ////图片填充
//x.Fill.CustomPicture("img.png"); //保存文档
workbook.SaveToFile("output.xlsx", ExcelVersion.Version2010);
System.Diagnostics.Process.Start("output.xlsx");
}
}
}

更多Excel背景色填充的方法,可参考以下文章:

1. C# 设置Excel单元格背景色

2. C# 设置Excel表格图片背景

(本文完)

转载请注明出处!

C# 填充Excel图表、图例背景色的更多相关文章

  1. vba控制图表,excel图表,一键完成

    来源http://club.excelhome.net/thread-1417686-1-1.html 官方教程链接 https://docs.microsoft.com/zh-cn/office/v ...

  2. 【原创】.NET读写Excel工具Spire.Xls使用(5)重量级的Excel图表功能

                  本博客所有文章分类的总目录:http://www.cnblogs.com/asxinyu/p/4288836.html .NET读写Excel工具Spire.Xls使用文章 ...

  3. JAVA生成EXCEL图表

    跟据客户的要求,需要开发一套包括图形的报表,还需要导出WORD 图表需要这样: 这样: 这样: 还有这样: 接下来是实现思路: 以往用的最多的就是JFreechart,手上也有实现各种图形的资源,但是 ...

  4. 《Excel图表之道》读书笔记

    一.突破常规的作图方法 突破Excel的默认颜色 非数据元素用淡色 突破Excel的图表布局 图表要素:主标题.副标题.图例.绘图.脚注 竖向构图 标明数据来源.图表注释.坐标轴截断符号 专业的水蓝色 ...

  5. EXCEL 图表 只在拐点的时候显示数字

    EXCEL图表只在折线的拐点显示数值,中间不需要显示.同时往下拐的,显示在上方,往上的显示在下方,这样数值不会挡住线. 首先,做一些模拟数据 因为起点和终点数值必须显示,所以单元格,C2 D2 C19 ...

  6. C# 填充Excel

    1.添加引用 Microsoft.Office.Interop.Excel; 2.使用命名空间 using Microsoft.Office.Interop.Excel; 3.填充EXCEL单元格方法 ...

  7. MSChart 设置饼图颜色 图例背景色 图例显示位置

    chartField.Series.Clear();            chartField.ChartAreas.Clear();            chartField.Legends.C ...

  8. Excel图表转成图片

    关于excel 图表转成图片 知识点:excel 生成的图表不是图片 尝试.    通过Java调用POI接口挺难把excel生成的图表转成图片导出来 ps.      其它生成图表的工具,如jfre ...

  9. [办公自动化]如何让excel图表标签中显示最新值数据

    同事做了一张excel图表,希望最新的数据显示数据标签,其他都不显示.并且当单元格的数据新增加时,这个标签要能自动更新. 这里需要用到公式,获取到这个最新值.在b2输入公式=lookup(9e+307 ...

随机推荐

  1. php 阿里云短信服务及阿里大鱼实现短信验证码的发送

    一:使用阿里云的短信服务 ① 申请短信签名 ②申请短信模板 ③创建Access Key,获取AccessKeyId 与 AccessKeySecret.(为了安全起见,这里建议使用子用户的Access ...

  2. 原生 JavaScript 实现扫雷

    学习了这么长时间的 JS,不能光看不练,于是就写了个小游戏练习一下.因为自己还是个菜鸟,所以有错误的话还请各位大佬多多指点,谢谢啦~ 如果感兴趣的话可以试试:Demo 项目地址:game-mineSw ...

  3. Spring Aop技术原理分析

    本篇文章从Aop xml元素的解析开始,分析了Aop在Spring中所使用到的技术.包括Aop各元素在容器中的表示方式.Aop自动代理的技术.代理对象的生成及Aop拦截链的调用等等.将这些技术串联起来 ...

  4. java客户端调用webService

    啥也不想说,以前使用的方法突然不行了.各种网搜(记得别忘记到jar包哦:axis.jar) 看代码,第一种方式,也就是以前的方式: 改方式不用表名参数名称 public static String i ...

  5. PAT1116: Come on! Let's C

    1116. Come on! Let's C (20) 时间限制 200 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 CHEN, Yue &quo ...

  6. Java NIO Channel to Channel Transfers通道传输接口

    原文链接:http://tutorials.jenkov.com/java-nio/channel-to-channel-transfers.html 在Java NIO中如果一个channel是Fi ...

  7. 【线程系列五】什么时候释放锁—wait()、notify()

    由于等待一个锁定线程只有在获得这把锁之后,才能恢复运行,所以让持有锁的线程在不需要锁的时候及时释放锁是很重要的.在以下情况下,持有锁的线程会释放锁:    1. 执行完同步代码块.    2. 在执行 ...

  8. 区分命令行模式和Python交互模式

    命令行模式 在Windows开始菜单选择"命令提示符",就进入到命令行模式,它的提示符类似C:\> Python交互模式 在命令行模式下敲命令python,就看到类似如下的一 ...

  9. Java 面试知识点解析(六)——数据库篇

    前言: 在遨游了一番 Java Web 的世界之后,发现了自己的一些缺失,所以就着一篇深度好文:知名互联网公司校招 Java 开发岗面试知识点解析 ,来好好的对 Java 知识点进行复习和学习一番,大 ...

  10. js中的对象创建与继承

    对象创建 1.工厂模式 优点:解决了创建多个相似对象的问题 缺点:没有解决对象识别问题:每一个对象都有一套自己的函数,浪费资源 function createPerson(name, age, job ...