C#实现将excel转换成pdf的三种方法

这篇具有很好参考价值的文章主要介绍了C#实现将excel转换成pdf的三种方法。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

本人经过一上午的搜索,总结了C#将excel转pdf的三种方法(导出的excel转化成pdf下载下来)。
设计文章数量较多,没有转载请见谅。

1.使用免费版的spire

下载地址https://www.e-iceblue.cn/Downloads/Free-Spire-XLS-NET.html

//前面是用NPOI处理导出的数据
Workbook workbook = new Workbook();
workbook.LoadFromFile("Excel路径");
Worksheet sheetpdf = workbook.Worksheets[sheetIndexs];
sheetpdf.SaveToPdf("pdf路径");

附带MemoryStream与FileStream的相互转换

//MemoryStream  ->  FileStream
MemoryStream ms = new MemoryStream();
wk.Write(ms);
ms.Seek(0, SeekOrigin.Begin);
FileStream fs = new FileStream("路径", FileMode.OpenOrCreate);
BinaryWriter w = new BinaryWriter(fs);
w.Write(ms.ToArray());
fs.Close();
ms.Close();
//FileStream->  MemoryStream  
byte[] data = File.ReadAllBytes(mainURL + @"\testPdf.pdf");
MemoryStream msPdf = new MemoryStream(data);

2.使用Microsoft.Office.Interop.Excel

using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Runtime.InteropServices;
using Microsoft.Office.Interop.Excel;
//Office 命名空间
namespace OfficeToPdf
{
   //excel 类
   class ExcelConverter
   {
       //构造函数
       public ExcelConverter()
       { }
       /// <summary>
       /// 转换excel 成PDF文档
       /// </summary>
       /// <param name="_lstrInputFile">原文件路径</param>
       /// <param name="_lstrOutFile">pdf文件输出路径</param>
       /// <returns>true 成功</returns>
       public bool ConverterToPdf(string _lstrInputFile, string _lstrOutFile)
       {
           Microsoft.Office.Interop.Excel.Application lobjExcelApp = null;
           Microsoft.Office.Interop.Excel.Workbooks lobjExcelWorkBooks = null;
           Microsoft.Office.Interop.Excel.Workbook lobjExcelWorkBook = null;
           string lstrTemp = string.Empty;
           object lobjMissing = System.Reflection.Missing.Value;
           try
           {
               lobjExcelApp = new Microsoft.Office.Interop.Excel.Application();
               lobjExcelApp.Visible = true;
               lobjExcelWorkBooks = lobjExcelApp.Workbooks;
               lobjExcelWorkBook = lobjExcelWorkBooks.Open(_lstrInputFile, true, true, lobjMissing, lobjMissing, lobjMissing, true,
                 lobjMissing, lobjMissing, lobjMissing, lobjMissing, lobjMissing, false, lobjMissing, lobjMissing);
               //Microsoft.Office.Interop.Excel 12.0.0.0之后才有这函数     
               lstrTemp = System.IO.Path.GetTempPath() + Guid.NewGuid().ToString() + ".xls" + (lobjExcelWorkBook.HasVBProject ? 'm' : 'x');
               //lstrTemp = System.IO.Path.GetTempPath() + Guid.NewGuid().ToString() + ".xls";
               lobjExcelWorkBook.SaveAs(lstrTemp, Microsoft.Office.Interop.Excel.XlFileFormat.xlExcel4Workbook, Type.Missing, Type.Missing, Type.Missing, false, Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlNoChange, Type.Missing,
                 false, Type.Missing, Type.Missing, Type.Missing);
               //输出为PDF 第一个选项指定转出为PDF,还可以指定为XPS格式
               lobjExcelWorkBook.ExportAsFixedFormat(Microsoft.Office.Interop.Excel.XlFixedFormatType.xlTypePDF, _lstrOutFile, Microsoft.Office.Interop.Excel.XlFixedFormatQuality.xlQualityStandard, Type.Missing, false, Type.Missing, Type.Missing, false, Type.Missing);
               lobjExcelWorkBooks.Close();
               lobjExcelApp.Quit();
           }
           catch (Exception ex)
           {
               //其他日志操作;
               return false;
           }
           return true;
       }
   }
}

3.使用Aspose.Cells

Aspose.Cells.Workbook wb = new Aspose.Cells.Workbook("excel路径");  
wb.Save("pdf路径", SaveFormat.Pdf);

以上三种方法经过试验是可以使用的。
据说还有用python去转换的,然后再用C#掉用,由于对python不太了解,这里只提供一个思路。文章来源地址https://www.toymoban.com/news/detail-439868.html

到了这里,关于C#实现将excel转换成pdf的三种方法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • C#异步方法async/await的三种返回类型

    有群友问C#异步方法async返回值Task和void的区别?看似简单,但不容易把它们用好。在C#中的异步编程已经成为现代编程的标配,异步方法(async/await)是实现异步编程的一种常用方式。在异步方法中,可以使用 Task 或 void 作为返回类型,还可以使用ValueTask返回类型。本文将介绍

    2024年02月04日
    浏览(49)
  • 在Unity中挂载C#脚本的三种方法

    ①在Project(工程)窗口的某个文件夹中(也可以选择新建在Assets(资源根目录)中),然后单击鼠标右键,选择Create-C# Script 注意:扩展名在Unity编辑器中是隐藏的! ②然后再直接拖拽到Hierarchy(层级视图)你想要挂载的物体上 ①在Project(工程)窗口的某个文件夹中(也可

    2024年02月03日
    浏览(38)
  • C++对string进行大小写转换的三种方法

    C++对string进行大小写转换的三种方法 方法一:下标 方法二:迭代器 方法三: 通过STL的transform算法配合的toupper和tolower来实现该功能

    2024年02月02日
    浏览(56)
  • QT中使用QtXlsx库的三种方法 QT基础入门【Excel的操作】

    对于Linux用户,如果Qt是通过“ apt-get”之类的软件包管理器工具安装的,请确保已安装Qt5开发软件包qtbase5-private-dev QtXlsx是一个可以读写Excel文件的库。它不需要Microsoft Excel,可以在Qt5支持的任何平台上使用。该库可用于从头开始生成新的.xlsx文件从现有.xlsx文件中提取数据编

    2024年02月12日
    浏览(46)
  • c语言大小写字母转换的三种方法 到 思考指针(超详细)

    目录 前言 总结摆在前面 1.指针思考的拓展 2.浅提一下表达式求值  三种方法 1.利用ASCII相差32 1.1以表达式求值的思考方式 1.2以指针的方式 2.通过按位异或来求(我觉得太巧合了,不推荐) 3.通过库函数(这个看你积累) 3.1  tolower函数——转换字符位小写 定义 参数 返回值

    2024年02月19日
    浏览(157)
  • 三种方法将Word文档转换为PDF文件格式

    如何将Word文档转换为PDF文件格式呢?大家在传输文件时,很多人喜欢使用PDF文件格式,因为它非常稳定,不会出现格式混乱的问题。但有些人可能不知道如何进行转换,今天我将介绍三种转换方法,让我们一起来学习一下吧。 方法一:记灵在线工具转换 ① 首先,进入记灵在

    2024年02月09日
    浏览(119)
  • js实现base64、url和blob之间相互转换的三种方式

    Blob对象表示一个不可变、原始数据的类文件对象,Blob表示的不一定是JavaScript原生格式的数据,下面这篇文章主要给大家介绍了关于js实现base64、url和blob之间相互转换的三种方式 url 转 base64 Blob 转 url Blob 转 base64 base64 转Blob base64 转 url 一般来说前端展示图片会通过三种方式:

    2024年02月03日
    浏览(51)
  • 快速排序的三种实现方法

    快速排序的单趟排序 快速排序的单趟排序:是以一个数作为基准值,实现将数组中比基准数小的数放在基准值的左侧,比基准值大的数放在基准值的右侧。 方法一:霍尔法 霍尔法的由来:霍尔是一个人的名字,他是最初发现快速排序的人,所以,它使用的单趟排序算法被称为

    2024年01月25日
    浏览(42)
  • Java实现Word文档转PDF,PDF转Word,PDF转Excel,PDF转换工具

    java实现word文档转PDF,PDF转word 解决只能转换4页问题 解决每页头部存在水印问题 引入依赖 破解的jar包 链接: https://pan.baidu.com/s/1MO8OBuf4FQ937R9KDtofPQ 提取码: 4tsn 源码路径:https://download.csdn.net/download/weixin_43992507/88215577 像流读取文件这些要关闭释放,不然异常报错文件的读取不会

    2024年02月13日
    浏览(56)
  • POI实现导出复杂Excel(动态行,复杂单元格,水印,Excel转换为PDF)。

      一、POI 表格框架 1.POI : POI提供API给Java程序对Microsoft Office格式档案读和写的功能 2.HSSF:Horrible SpreadSheet Format,为读取操作提供了两类API:usermodel和eventusermodel,即“用户模型”和“事件-用户模型” 3.POI 文档结构类  HSSFWorkbook 文档对象,HSSFSheet  页,HSSFRow 行,HSSFCell 单

    2024年02月06日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包