我的编程空间,编程开发者的网络收藏夹
学习永远不晚

c#使用Aspose打印文件的示例

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

c#使用Aspose打印文件的示例

最近在研究winform打印文件,需要支持word,excel,ppt,pdf,图片这几种格式,不能依赖相关软件环境,研究后决定使用Aspose套件将相关文件全部转换成pdf后打印

WrodToPDF

使用Aspose.Word 11.9,需要配合licence文件破解


//去水印
string licenseFile = "Aspose.Words.lic";
if (File.Exists(licenseFile))
{
    Aspose.Words.License license = new Aspose.Words.License();
    license.SetLicense(licenseFile);
}
 
//转换
Aspose.Words.Document doc = new Aspose.Words.Document(FileFullName);
doc.Save(SaveFileName, Aspose.Words.SaveFormat.Pdf);

ExcelToPDF

使用Aspose.Cell 8.3(破解版本)


                //转换
                Workbook excel = new Workbook(FileFullName);
                excel.Save(SaveFileName, Aspose.Cells.SaveFormat.Pdf);

PPTToPDF

使用Aspose.Slides 16.9(需要配合代码破解)


//去水印
            string[] stModule = new string[8]
            {
                "\u0002\u2006\u2006\u2003",
                "\u0003\u2006\u2006\u2003",
                "\u0005\u2005\u2000\u2003",
                "\u0003\u2000",
                "\u000F",
                "\u0002\u2000",
                "\u0003",
                "\u0002"
            };
            Assembly assembly = Assembly.GetAssembly(typeof(Aspose.Slides.License));
            Type typeLic = null, typeIsTrial = null, typeHelper = null;
            foreach (Type type in assembly.GetTypes())
            {
                if ((typeLic == null) && (type.Name == stModule[0]))
                {
                    typeLic = type;
                }
                else if ((typeIsTrial == null) && (type.Name == stModule[1]))
                {
                    typeIsTrial = type;
                }
                else if ((typeHelper == null) && (type.Name == stModule[2]))
                {
                    typeHelper = type;
                }
            }
            if (typeLic == null || typeIsTrial == null || typeHelper == null)
            {
                throw new Exception();
            }
            object lic = Activator.CreateInstance(typeLic);
            int findCount = 0;

            foreach (FieldInfo field in typeLic.GetFields(BindingFlags.NonPublic | BindingFlags.Static | BindingFlags.Instance))
            {
                if (field.FieldType == typeLic && field.Name == stModule[3])
                {
                    field.SetValue(null, lic);
                    ++findCount;
                }
                else if (field.FieldType == typeof(DateTime) && field.Name == stModule[4])
                {
                    field.SetValue(lic, DateTime.MaxValue);
                    ++findCount;
                }
                else if (field.FieldType == typeIsTrial && field.Name == stModule[5])
                {
                    field.SetValue(lic, 1);
                    ++findCount;
                }

            }
            foreach (FieldInfo field in typeHelper.GetFields(BindingFlags.NonPublic | BindingFlags.Static | BindingFlags.Instance))
            {
                if (field.FieldType == typeof(bool) && field.Name == stModule[6])
                {
                    field.SetValue(null, false);
                    ++findCount;
                }
                if (field.FieldType == typeof(int) && field.Name == stModule[7])
                {
                    field.SetValue(null, 128);
                    ++findCount;
                }
            }
            if (findCount < 5)
            {
                throw new NotSupportedException("无效的版本");
            }
            //转换
            Presentation ppt = new Presentation(FileFullName);
            ppt.Save(SaveFileName, Aspose.Slides.Export.SaveFormat.Pdf);

图片ToPDF

使用Aspose.Pdf 9.4(需要配合代码破解)


//去水印
                    private const string Key = "PExpY2Vuc2U+DQogIDxEYXRhPg0KICAgIDxMaWNlbnNlZFRvPlNoYW5naGFpIEh1ZHVuIEluZm9ybWF0aW9uIFRlY2hub2xvZ3kgQ28uLCBMdGQ8L0xpY2Vuc2VkVG8+DQogICAgPEVtYWlsVG8+MzE3NzAxODA5QHFxLmNvbTwvRW1haWxUbz4NCiAgICA8TGljZW5zZVR5cGU+RGV2ZWxvcGVyIE9FTTwvTGljZW5zZVR5cGU+DQogICAgPExpY2Vuc2VOb3RlPkxpbWl0ZWQgdG8gMSBkZXZlbG9wZXIsIHVubGltaXRlZCBwaHlzaWNhbCBsb2NhdGlvbnM8L0xpY2Vuc2VOb3RlPg0KICAgIDxPcmRlcklEPjE2MDkwMjAwNDQwMDwvT3JkZXJJRD4NCiAgICA8VXNlcklEPjI2NjE2NjwvVXNlcklEPg0KICAgIDxPRU0+VGhpcyBpcyBhIHJlZGlzdHJpYnV0YWJsZSBsaWNlbnNlPC9PRU0+DQogICAgPFByb2R1Y3RzPg0KICAgICAgPFByb2R1Y3Q+QXNwb3NlLlRvdGFsIGZvciAuTkVUPC9Qcm9kdWN0Pg0KICAgIDwvUHJvZHVjdHM+DQogICAgPEVkaXRpb25UeXBlPkVudGVycHJpc2U8L0VkaXRpb25UeXBlPg0KICAgIDxTZXJpYWxOdW1iZXI+NzM4MDNhYmUtYzZkMi00MTY3LTg2MTgtN2I0NDViNDRmOGY0PC9TZXJpYWxOdW1iZXI+DQogICAgPFN1YnNjcmlwdGlvbkV4cGlyeT4yMDE3MDkwNzwvU3Vic2NyaXB0aW9uRXhwaXJ5Pg0KICAgIDxMaWNlbnNlVmVyc2lvbj4zLjA8L0xpY2Vuc2VWZXJzaW9uPg0KICAgIDxMaWNlbnNlSW5zdHJ1Y3Rpb25zPmh0dHA6Ly93d3cuYXNwb3NlLmNvbS9jb3Jwb3JhdGUvcHVyY2hhc2UvbGljZW5zZS1pbnN0cnVjdGlvbnMuYXNweDwvTGljZW5zZUluc3RydWN0aW9ucz4NCiAgPC9EYXRhPg0KICA8U2lnbmF0dXJlPm5LNVVUR3dZMWVJSEtIV0d2NW5sQUxXUy81bDEzWkFuamlvdnlBcGNqQis0ZjNGbm5yOWhjeUlzazlvVzQySWp0ZFYra2JHZlNSMUV4OUozSGlkaThCeE43aHFiR1BERXNaWGo2RlYxaGl1N2MxWmUyNEp3VGc2UnpsNUNJRHY1YVhxbDQyczBkSGw4eXpreDRBM2RTTU5KTzRiQ094a2V2OFBiOWxSaUc3ST08L1NpZ25hdHVyZT4NCjwvTGljZW5zZT4=";
                    private static Stream LStream = (Stream)new MemoryStream(Convert.FromBase64String(Key));
                    var l = new Aspose.Pdf.License();
                    l.SetLicense(LStream);
                    //转换
                    Document doc = new Document();
                    Page page = doc.Pages.Add();
                    Aspose.Pdf.Image image = new Aspose.Pdf.Image();
                    image.File = FileFullName;
                    page.Paragraphs.Add(image);
                    PrintFileName = OfficeUtil.CombinePDFPath(ConvertPDFName);
                    doc.Save(PrintFileName);

PDF文件打印

使用Aspose.Pdf打印文件可以直接设置打印机名称,分数,方向d等


                    System.Drawing.Printing.PrinterSettings ps = new     
                    System.Drawing.Printing.PrinterSettings();
                    ps.PrinterName = PrinterName;
                    ps.Copies = Copies;
                    ps.Duplex = Direction;

                    PdfViewer viewer = new PdfViewer();
                    viewer.BindPdf(PrintFileName);
                    viewer.PrintDocumentWithSettings(ps);
                    viewer.Close();

注:对于excel转换pdf后是没有表格线的,ppt转换pdf后打印会被截断,需要自己调整方向与纸张大小设置

以上就是c#使用Aspose打印文件的示例的详细内容,更多关于c# 用Aspose打印文件的资料请关注编程网其它相关文章!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

c#使用Aspose打印文件的示例

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

C#打印控件的使用

本篇内容主要讲解“C#打印控件的使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C#打印控件的使用”吧!WinForm中的打印可通过使用.Net提供的打印类完成,也可以使用C#提供的支持打印的
2023-06-17

C#中如何使用打印控件

C#中如何使用打印控件,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。首先弄一个printDocument控件,然后在打印的按钮中直接调用printDocument1.print
2023-06-17

怎么使用Linux的lp命令打印文件

今天小编给大家分享一下怎么使用Linux的lp命令打印文件的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。lp打印文件或修改排
2023-06-28

C++使用ifstream读取文件内容的示例详解

这篇文章主要为大家详细介绍了C++如何使用ifstream读取文件内容的功能,文中的示例代码讲解详细,具有一定的参考价值,感兴趣的可以了解一下
2023-03-01

Vue利用插件实现打印功能的示例详解

这篇文章主要为大家详细介绍了Vue如何利用vue-print-nb插件实现打印功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学一下
2023-03-19

腾讯云服务器怎么使用本地打印机打印文件

如果您需要使用腾讯云服务器本地打印文件,可以按照以下步骤进行操作:在腾讯云服务器上创建本地打印机,可以选择使用公用的本地打印机,也可以选择使用自己的打印机设备。打开腾讯云服务器的远程控制功能,例如:控制面板,可以查看本地打印机的状态并设置打印参数。在本地打印机上打开需要打印的文件,例如:文档或图片。在文件上点击右键菜单,选择“发送到打印机”选项。在弹出的打印窗口中,选择“设置本地打印
2023-10-26

如何使用 golang 在网络打印机上打印文件或格式化文本

学习Golang要努力,但是不要急!今天的这篇文章《如何使用 golang 在网络打印机上打印文件或格式化文本》将会介绍到等等知识点,如果你想深入学习Golang,可以关注我!我会持续更新相关文章的,希望对大家都能有所帮助!问题内容下面的代
如何使用 golang 在网络打印机上打印文件或格式化文本
2024-04-05

C#操作文本文件应用的示例分析

本篇文章给大家分享的是有关C#操作文本文件应用的示例分析,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。C#操作文本文件应用实例:using System; using Sys
2023-06-18

腾讯云服务器怎么使用本地打印机打印文件夹

如果您需要在腾讯云服务器上使用本地打印机来打印文件夹中的文件,您可以按照以下步骤来使用本地打印机:选择“文件和打印共享”。在此处,您需要选择要使用此打印机的文件夹。点击“安装打印机驱动程序”。这可以确保您正在使用的打印机已安装好打印机驱动程序。在弹出的对话框中,确认您的计算机已连接到打印机。选择要连接打印机的本地计算机,并点击“连接到此计算机”。等待打印机驱动程序安装完成。打开打印
2023-10-26

Linux中如何使用strings命令打印文件

Linux中如何使用strings命令打印文件,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。使用示例示例一:[root@www.linuxidc.com ~]# strings
2023-06-16

C#中的打印原理以及应用实例

这篇文章主要讲解了“C#中的打印原理以及应用实例”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C#中的打印原理以及应用实例”吧!C#打印原理其实就是生成MDI文件,那么什么是MDI文件呢?M
2023-06-17

腾讯云服务器怎么使用本地打印机设备打印文件

如果您需要使用腾讯云服务器进行本地打印,您需要使用打印机驱动程序并连接到打印设备。以下是一些常见的步骤:选择适合您需求的打印机:您需要选择适合您需要打印文档的设备,例如台式机或笔记本电脑。如果您不确定如何选择打印机,请参考QQ应用商店或应用商店的选项。选择网络连接:选择一个网络连接,以确保您的电脑和打印机之间可以顺利连接。安装打印机驱动程序:确认您的设备已经连接到打印机驱动程序,这有助于
2023-10-26

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录