广告
返回顶部
首页 > 资讯 > 后端开发 > 其他教程 >winform把Office转成PDF文件
  • 247
分享到

winform把Office转成PDF文件

2024-04-02 19:04:59 247人浏览 泡泡鱼
摘要

先要把Word或ppt转换为pdf; 以pdf的格式展示,防止文件拷贝。 转换方法 1、安装Word、excel、PowerPoint组件 注意:需安装Microsoft.Offic

先要把Word或ppt转换为pdf; 以pdf的格式展示,防止文件拷贝。

转换方法

1、安装Word、excel、PowerPoint组件

注意:需安装Microsoft.Office.Interop.Word\Excel\PowerPoint组件。

程序集如下:

2、转换代码

(1)将Word转换为pdf: 

using Microsoft.Office.Core;
using System;
using System.io;
using System.windows.FORMs;
using Excel = Microsoft.Office.Interop.Excel;
using PowerPoint = Microsoft.Office.Interop.PowerPoint;
using Word = Microsoft.Office.Interop.Word;

namespace WindowsFormsApp4
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            bool isSuccess = DOCConvertToPDF(Directory.GetCurrentDirectory() + "\\aa.docx", Directory.GetCurrentDirectory() + "\\aa.pdf");
            if (isSuccess)
            {
                pdfViewer1.LoadFromFile(Directory.GetCurrentDirectory() + "\\aa.pdf");
            }
        }

        /// <summary>
        /// Word转换成pdf
        /// </summary>
        /// <param name="sourcePath">源文件路径</param>
        /// <param name="targetPath">目标文件路径</param>
        /// <returns>true=转换成功</returns>
        public static bool DOCConvertToPDF(string sourcePath, string targetPath)
        {
            bool result = false;
            Word.Application app = new Word.Application();
            Word.Document doc = null;
            object missing = System.Reflection.Missing.Value;
            object saveChanges = Word.WdSaveOptions.wdDoNotSaveChanges;
            try
            {
                app.Visible = false;
                doc = app.Documents.Open(sourcePath);
                doc.ExportAsFixedFormat(targetPath, Word.WdExportFormat.wdExportFormatPDF);
                result = true;
            }
            catch (Exception ex)
            {
                result = false;
                throw new ApplicationException(ex.Message);
            }
            finally
            {
                if (doc != null)
                {
                    doc.Close(ref saveChanges, ref missing, ref missing);
                    doc = null;
                }
                if (app != null)
                {
                    app.Quit(ref missing, ref missing, ref missing);
                    app = null;
                }
                GC.Collect();
                GC.WaitForPendingFinalizers();
            }
            return result;
        }

    }
}

(2)把Excel文件转换成PDF格式文件

/// <summary>
/// 把Excel文件转换成PDF格式文件
/// </summary>
/// <param name="sourcePath">源文件路径</param>
/// <param name="targetPath">目标文件路径</param>
/// <returns>true=转换成功</returns>
public static bool XLSConvertToPDF(string sourcePath, string targetPath)
{
    bool result = false;
    Excel.XlFixedFormatType targetType = Excel.XlFixedFormatType.xlTypePDF;
    object missing = Type.Missing;
    Excel.Application app = null;
    Excel.Workbook book = null;
    try
    {
        app = new Excel.Application();
        object target = targetPath;
        object type = targetType;
        book = app.Workbooks.Open(sourcePath, missing, missing, missing, missing, missing,
        missing, missing, missing, missing, missing, missing, missing, missing, missing);
        book.ExportAsFixedFormat(targetType, target, Excel.XlFixedFormatQuality.xlQualityStandard, true, false, missing, missing, missing, missing);
        result = true;
    }
    catch (Exception ex)
    {
        result = false;
        throw new ApplicationException(ex.Message);
    }
    finally
    {
        if (book != null)
        {
            book.Close(true, missing, missing);
            book = null;
        }
        if (app != null)
        {
            app.Quit();
            app = null;
        }
        GC.Collect();
        GC.WaitForPendingFinalizers();
    }
    return result;
}

(3)把PowerPoint文件转换成PDF格式文件

///<summary>
/// 把PowerPoint文件转换成PDF格式文件
///</summary>
///<param name="sourcePath">源文件路径</param>
///<param name="targetPath">目标文件路径</param>
///<returns>true=转换成功</returns>
public static bool PPTConvertToPDF(string sourcePath, string targetPath)
{
    bool result = false;

    PowerPoint.PpSaveAsFileType targetFileType = PowerPoint.PpSaveAsFileType.ppSaveAsPDF;
    object missing = Type.Missing;
    PowerPoint.Application app = null;
    PowerPoint.Presentation pres = null;
    try
    {
        app = new PowerPoint.Application();
        pres = app.Presentations.Open(sourcePath, MsoTriState.msoTrue, MsoTriState.msoFalse, MsoTriState.msoFalse);
        pres.SaveAs(targetPath, targetFileType, Microsoft.Office.Core.MsoTriState.msoTrue);
        result = true;
    }
    catch (Exception ex)
    {
        result = false;
        throw new ApplicationException(ex.Message);
    }
    finally
    {
        if (pres != null)
        {
            pres.Close();
            pres = null;
        }
        if (app != null)
        {
            app.Quit();
            app = null;
        }
        GC.Collect();
        GC.WaitForPendingFinalizers();
    }
    return result;
}

到此这篇关于winform把Office转成PDF文件的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持编程网。

--结束END--

本文标题: winform把Office转成PDF文件

本文链接: https://www.lsjlt.com/news/151378.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

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

下载Word文档
猜你喜欢
  • winform把Office转成PDF文件
    先要把word或ppt转换为pdf; 以pdf的格式展示,防止文件拷贝。 转换方法 1、安装Word、Excel、PowerPoint组件 注意:需安装Microsoft.Offic...
    99+
    2022-11-13
  • Python怎么将Office文件转PDF
    本篇内容介绍了“Python怎么将Office文件转PDF”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!安装 win32com在实战之前,需...
    99+
    2023-06-27
  • Python中怎么将Office文件转为PDF
    这篇文章将为大家详细讲解有关Python中怎么将Office文件转为PDF,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。安装 win32com在实战之前,需要安装 Python 的 win3...
    99+
    2023-06-16
  • 怎么把html转成pdf文件(方法详解)
    如今,在我们的日常生活中,PDF 文件格式已成为一种常见的文件格式。与其他常见格式相比,PDF 文件具有很多便利之处:跨操作系统,文件小巧,易被搜索,不易篡改等等。虽然在大多数情况下,你可能更喜欢编辑 HTML 文档,但是当你需要在电子邮件...
    99+
    2023-05-14
  • 怎么用php把word转pdf文件
    在现代的商业行业中,文档转换的需求已经越来越普及。从过去的手动方式到今天的自动化方式,现代的技术业已经实现了文档格式之间的自动转换。这篇文章将会重点介绍如何通过使用PHP将Word文件转换成PDF文件。PHP和LibreOffice最好的文...
    99+
    2023-05-14
    php Word PDF
  • 如何用php把word转pdf文件
    这篇文章主要介绍了如何用php把word转pdf文件的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇如何用php把word转pdf文件文章都会有所收获,下面我们一起来看看吧。PHP和LibreOffice最好的文...
    99+
    2023-07-05
  • Linux不用使用软件怎样把纯文本文档转换成PDF文件
    这篇文章给大家介绍Linux不用使用软件怎样把纯文本文档转换成PDF文件,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。我想要将一个纯文本文件转换成PDF文档。在Linux命令行下是否有一个简单的方法将文本文件转换成PD...
    99+
    2023-06-13
  • Win10把文件转为PDF格式详解
      Win10 10036泄露出来,用户惊喜地发现,新增了一个功能,可以把文件转换为PDF格式,而且操作起来很容易。这项功能是Win10原生支持的,Win7、Win8系统里需要第三方软件支持。   在任意文件上点击右键...
    99+
    2023-06-12
    Win10 PDF 文件 格式
  • eml文件如何转换成pdf
    本篇内容主要讲解“eml文件如何转换成pdf”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“eml文件如何转换成pdf”吧! eml文件转换成pdf的方法 1...
    99+
    2023-01-03
    pdf eml文件
  • PDF文件怎么转成markdown格式
    这篇文章主要介绍了PDF文件怎么转成markdown格式,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。百度上根据pdf转makrdown为关...
    99+
    2022-10-19
  • windows怎么把pdf转换成jpg图片
    这篇文章主要介绍了windows怎么把pdf转换成jpg图片的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇windows怎么把pdf转换成jpg图片文章都会有所收获,下面我们一起来看看吧。pdf转换成jpg图片...
    99+
    2023-07-02
  • php怎么将word文档转成PDF文件
    在如今数字化的时代,文档转换成PDF(Portable Document Format)是十分常见的需求,因为PDF是一种跨平台、适用于多种设备和操作系统的文件格式,具有良好的兼容性和可靠的可读性。而php作为一种强大的服务器端编程语言,可...
    99+
    2023-05-14
    php
  • php如何将word文档转成PDF文件
    本文小编为大家详细介绍“php如何将word文档转成PDF文件”,内容详细,步骤清晰,细节处理妥当,希望这篇“php如何将word文档转成PDF文件”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。第一步:安装和配置...
    99+
    2023-07-05
  • linux平台的office文档转pdf的实例分析
    linux平台的office文档转pdf的实例分析,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。需要材料:  Openoffice3.4(我是32位的...
    99+
    2023-06-05
  • Linux下如何将文本文档转换成PDF文件
    这篇文章将为大家详细讲解有关Linux下如何将文本文档转换成PDF文件,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。现在有很多软件能够将文本文件转换成PDF文件,其实在Linux系统中,不用使用软件也能将...
    99+
    2023-06-27
  • Java根据word模板生成word文档并转成PDF文件
    1. 处理word模板 1.1 定义word模版 1.2 定义完我们的模板之后,我们要将文档保存为xml的格式 定义完我们的模板之后,我们要将文档保存为xml的格式 1.3 xml格式化 ...
    99+
    2023-09-09
    java word pdf chart
  • Win10如何把文件转为PDF格式以方便阅读
      Win10 10036泄露出来,用户惊喜地发现,新增了一个功能,可以把文件转换为PDF格式,而且操作起来很容易。这项功能是Win10原生支持的,Win7、Win8系统里需要第三方软件支持。   在任意文件上点击右键,...
    99+
    2023-06-12
    Win10 PDF格式 PDF 文件 格式
  • 如何在java中使用openoffice将office文档转换为PDF
    如何在java中使用openoffice将office文档转换为PDF?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。Java的特点有哪些Java的特点有哪些1....
    99+
    2023-05-30
    java openoffice office
  • PHP生成PDF文件
    吾生也有涯,而知也无涯~欢迎优化补充、指正! 近期有需求是:前端签名后结合平台协议生成签名文件 本例实现方法为:借助canvas生成签名图片,然后贴至协议底部保存为pdf文档 (本例在TP6环境下)借助TCPDF实现  官方提供多个例子点击...
    99+
    2023-09-05
    前端
  • Android 生成pdf文件
    Android 生成pdf文件 1.使用官方的方式 使用官方的方式也就是PdfDocument类的使用 1.1 基本使用   @RequiresApi(api = Build.VERSION_CODES.KITKAT)   priv...
    99+
    2023-09-08
    android pdf gitee
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作