Excel文件转为其他格式文件
引用:Spire.XLS 是一个 Excel 文件的读写库,无需安装office,使用起来也挺方便的。Spire还有一些其他的库(Spire.Doc,Spire.Pdf……)
说明:Spire.XLS.dll还会实例化Spire.Pdf.dll中的类,所以Spire.XLS.dll ,Spire.Pdf.dll ,Spire.License.dll 这3个dll一起使用
Excel转图片:
//初始化一个Workbook实例,并加载一个工作簿文件
Workbook workbookExcel = new Workbook();
workbookExcel.LoadFromFile(paramSourceBookPath);//路径
//循环将工作表保存为图片
if (workbookExcel != null)
{
for (int i = ; i < workbookExcel.Worksheets.Count; i++)
{
string pngPath = pngDirectoryName + "\\" + (i + ).ToString() + ".png";
Worksheet sheet = workbookExcel.Worksheets[i];
sheet.SaveToImage(pngPath);
sheet.Clear();
Thread.Sleep();
CaptureImage(pngPath, , , pngPath);//截取图片,去掉版本信息
}
}
试用版的spire.xls在转换时,会在文件中加入一个版本信息:Evaluation Warning : The document wascreated with Spire.XLS for .NET,去掉这个信息,我直接截取图片了
/// <summary>
/// 截取图片(去掉版本信息:Evaluation Warning : The document wascreated with Spire.XLS for .NET)
/// </summary>
/// <param name="fromImagePath"></param>
/// <param name="offsetX"></param>
/// <param name="offsetY"></param>
/// <param name="toImagePath"></param>
public void CaptureImage(string fromImagePath, int offsetX, int offsetY, string toImagePath)
{
//原图片文件
Image fromImage = Image.FromFile(fromImagePath);
int width = fromImage.Width;
int height = fromImage.Height - offsetY;
//创建新图位图
Bitmap bitmap = new Bitmap(width, height);
//创建作图区域
Graphics graphic = Graphics.FromImage(bitmap);
//截取原图相应区域写入作图区
graphic.DrawImage(fromImage, , , new Rectangle(offsetX, offsetY, width, height), GraphicsUnit.Pixel);
//从作图区生成新图
Image saveImage = Image.FromHbitmap(bitmap.GetHbitmap());
//释放资源
graphic.Dispose();
bitmap.Dispose();
fromImage.Dispose();
FileInfo oldImage = new FileInfo(fromImagePath);
if (oldImage.Exists)
{
global::System.IO.File.Delete(fromImagePath);
}
//保存图片
saveImage.Save(toImagePath, System.Drawing.Imaging.ImageFormat.Png);
//释放资源
saveImage.Dispose();
}
Excel转其他格式文件:
// 源文件路径
string sourceFilePath = OpenFile.FileName;
SaveFileDialog saveFileDialog = new SaveFileDialog();
switch (fileFormat)
{
case FileFormat.Bitmap:
saveFileDialog.Filter = "Bitmap(*.bmp)|*.bmp";
break;
case FileFormat.PDF:
saveFileDialog.Filter = "PDF Document(*.pdf)|*.pdf";
break;
case FileFormat.ODS:
saveFileDialog.Filter = "OpenOffice Document Spreadsheet(*.ods)|*.ods";
break;
case FileFormat.CSV:
saveFileDialog.Filter = "CSV(*.csv)|*.csv";
break;
case FileFormat.XML:
saveFileDialog.Filter = "XML(*.xml)|*.xml";
break;
case FileFormat.XPS:
saveFileDialog.Filter = "XPS(*.xps)|*.xps";
break;
case FileFormat.Version2007:
saveFileDialog.Filter = "XPS(*.xps)|*.xps";
break;
default:
break;
}
saveFileDialog.FilterIndex = ;
if (saveFileDialog.ShowDialog() != DialogResult.OK)
return;
// 转换后的目标文件路径
string destFilePath = saveFileDialog.FileName;
// 转换
Workbook workbook = new Workbook();
workbook.LoadFromFile(sourceFilePath);
workbook.SaveToFile(destFilePath, fileFormat);
Excel文件转为其他格式文件的更多相关文章
- MATLAB中将mat文件转为txt格式文件
直接保存为txt文件: 可以用fprintf函数,来代替save函数 比如现在我有一个变量a=[0.1223 345.4544] 如果我想保存它的话,可以用下面的程序: fid = fopen(' ...
- winform利用itextsharp.dll实现图片文件转换PDF格式文件
1.利用itextsharp.dll实现单个图片文件转换为PDF格式文件, 可以使用以下类: void ConvertJPG2PDF(string jpgfile, string pdf) { var ...
- C# Word转为多种格式文件(Word转XPS/SVG/EMF/EPUB/TIFF)
一款有着强大的文档转换功能的工具,无论何时何地都会是现代办公环境极为需要的.在本篇文章中,将继续介绍关于Word文档的转换功能(Word转XPS/SVG/EMF/EPUB/TIFF)希望方法中的代码能 ...
- Mac新建文件夹、txt文件、无格式文件
新建文件夹: mkdir test 新建txt touch test.txt 新建无后缀格式文件 touch test 如果要删除文件夹 rm -r -f test
- solidworks的工程图模板文件和图纸格式文件
工程图模板文件:drwdot,这个文件是在新建工程图的时候,可以选择的,如下. 图纸格式文件:slddrt,这个文件是进入工程图环境,编辑[图纸属性]的时候,可以选择的.如下. 怎么定制上述两种文件? ...
- Mac新建文件夹、txt文件、其他格式文件
Mac新建txt,正好有人问我,我就把我自己的方法记录一下: 先cd到你指定的文件路径下: 新建文件夹: mkdir test 新建txt touch test.txt 新建无后缀格式文件 touch ...
- uiautomator日志文件转换为xml格式文件
如果想把uiautomator的日志文件,转换成漂亮的xml文件,那么可以使用automator-log-converter.jar工具, 工具使用方法: 使用工具automator-log-conv ...
- vcf格式文件转化为Excel(csv)格式文件(R语言的write.csv,write.table功能,Excel表的文件导入功能)
最近在整理文件,准备把vcf文件转化为Excel格式,或者CSV格式,网上搜了一堆资料,还真有人专门开发出转化格式的工具:叫vcf2csv(下载地址http://vcf2csv.sourceforge ...
- C#对word、excel、pdf等格式文件的操作总结
一.word 这是我以前工作时写过的一个业务逻辑处理类,里面有不少文件操作的方法,这里主要关注一下C#对word的操作.里面的方法可以直接拿出来用,主要是通过word的dot模版来进行创建word.替 ...
随机推荐
- day 27 多态 接口 类方法 静态方法 hashlib 摘要算法模块
# 多态的理解:# Python 天生自带多态# 鸭子类型 list 和 tuple 就是一对鸭子类型 很像但是没有继承关系## 而其他的类型 上传参数或者打印参数的时候 必须是指定的数据类型# -- ...
- CentOS7下-bash: nano: command not found
由于安装的是纯净版系统,运行nano命令是提示没有找到该命令,以下是解决方法,用root权限的用户运行以下命令安装nano: yum install nano 遇到询问时一路点y即可. 安装好后运行: ...
- 2.15 富文本(richtext)
2.15 富文本(richtext) 前言 富文本编辑框是做web自动化最常见的场景,有很多小伙伴不知从何下手,本篇以博客园的编辑器为例,解决如何定位富文本,输入文本内容一.加载配置 1 ...
- 第七十四课 图的遍历(BFS)
广度优先相当于对顶点进行分层,层次遍历. 在Graph.h中添加BFS函数: #ifndef GRAPH_H #define GRAPH_H #include "Object.h" ...
- Samsung_tiny4412(驱动笔记04)----volatile,container_of,file_operations,file,inode
/*********************************************************************************** * * volatile,co ...
- Python之路,第十二篇:Python入门与基础12
python3 函数3 装饰器 decorator *** 概念:装饰器是一个函数,主要作用是用来包装另一个函数或类: 包装的目的:是在不改变原函数名的情况下,改变被包装函数(对象)的行为. 装饰 ...
- 初学html的单词笔记
font-size: 文字大小color: 顏色solid: 边框线text-align: 間距center: 文字放在中間<head> 网页头部<title> 网页标题< ...
- C#正则表达式语法教程
C#语法之正则 本文提供全流程,中文翻译. Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) Chinar -- 心分享.心创新!助力 ...
- DES算法,JAVA,遇到的问题
(1)使用Based64编码时出现的问题. java.lang.IllegalArgumentException 这中情况出现在解密时,主要原因是based64加密时用了sun的内部包sun.misc ...
- int &p
int &p为引用,而int p为定义变量.二者区别如下:1 引用在定义的时候必须赋值,否则编译会出错.正确的形式为int &p = a;其中a为int型变量.2 引用在定义时不会分配 ...