将单个 doc 文件转换为 pdf

2024-01-06

我正在使用以下代码如何以编程方式将 Word 文件转换为 PDF? https://stackoverflow.com/questions/607669/how-do-i-convert-word-files-to-pdf-programmatically将 doc 文件转换为 pdf。但代码提到从特定目录获取所有 .doc 文件,而我希望只包含我从应用程序中选择的文件,或者有时只包含单个文件。

请指导我

thanks!


相同的代码,针对单个文件进行修改:

using Microsoft.Office.Interop.Word;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;

...

// Create a new Microsoft Word application object
Microsoft.Office.Interop.Word.Application word = new Microsoft.Office.Interop.Word.Application();

// C# doesn't have optional arguments so we'll need a dummy value
object oMissing = System.Reflection.Missing.Value;

// Get a Word file
FileInfo wordFile = new FileInfo("myDoc.doc");

word.Visible = false;
word.ScreenUpdating = false;

// Cast as Object for word Open method
Object filename = (Object)wordFile.FullName;

// Use the dummy value as a placeholder for optional arguments
Document doc = word.Documents.Open(ref filename, ref oMissing,
    ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing,
    ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing,
    ref oMissing, ref oMissing, ref oMissing, ref oMissing);
doc.Activate();

object outputFileName = wordFile.FullName.Replace(".doc", ".pdf");
object fileFormat = WdSaveFormat.wdFormatPDF;

// Save document into PDF Format
doc.SaveAs(ref outputFileName,
    ref fileFormat, ref oMissing, ref oMissing,
    ref oMissing, ref oMissing, ref oMissing, ref oMissing,
    ref oMissing, ref oMissing, ref oMissing, ref oMissing,
    ref oMissing, ref oMissing, ref oMissing, ref oMissing);

// Close the Word document, but leave the Word application open.
// doc has to be cast to type _Document so that it will find the
// correct Close method.                
object saveChanges = WdSaveOptions.wdDoNotSaveChanges;
((_Document)doc).Close(ref saveChanges, ref oMissing, ref oMissing);
doc = null;

// word has to be cast to type _Application so that it will find
// the correct Quit method.
((_Application)word).Quit(ref oMissing, ref oMissing, ref oMissing);
word = null;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将单个 doc 文件转换为 pdf 的相关文章

  • 多个源文件中包含包含“const”的头文件

    Why does not包含定义的头文件const并被多个源文件包含会产生编译错误multiple definition const in header file h const int num 5 int x Error Multiple
  • 无法使用 Unity 函数在 Visual Studio Code 中获得完整的 Intellisense

    好吧 我知道这个问题已经被问过并回答过很多次了 但我花了大约 3 天的时间试图解决这个问题 但到目前为止我所做的一切都没有奏效 我基本上在 Visual Studio Code 中有部分智能感知 也就是说 它似乎只识别 Unity 类和变量
  • 如何以编程方式确定 C 中 int 数据的最大和最小限制?

    我正在尝试 K R 的练习 2 1 练习内容如下 编写一个程序来确定范围char short int and long变量 两者signed and unsigned 通过从标准标题打印适当的值并通过直接计算 如果计算它们会更困难 确定各种
  • 用 C++ 解密文件,该文件使用 openssl -aes-128-cbc 加密

    我正在尝试用 C 解密文件 该文件使用以下命令加密 openssl enc nosalt aes 128 cbc pass pass test in test txt out test enc txt p 控制台显示key 098F6BCD
  • 错误 LNK2001:无法解析的外部符号 __CxxFrameHandler3

    我正在将 Qt 从 VS 2013 迁移到 Qt 5 10 1 到 VS 2015 出现以下多个链接错误 error LNK2001 unresolved external symbol CxxFrameHandler3 error LNK
  • 使用 C 创建立体声正弦波

    我正在尝试用 C 创建立体声正弦 WAV 并且可能有不同的 可能是空白的 左声道和右声道 使用此函数为每个通道生成一个音调 int16 t create tone float frequency float amplitude float
  • c++11 中的 std::thread 问题

    我在尝试从标准模板库编译具有多线程的程序时遇到一些麻烦 当我尝试编译以下程序时 它返回一个晦涩的错误 include
  • c#Registry to XML无效字符问题

    我在尝试从注册表创建 XML 文件时遇到问题 在我的笔记本电脑 W7 64b 上它工作正常 生成了 xml 文件 但在另一台计算机 Xp 32b 上抛出异常 System ArgumentException 十六进制值 0x00 是无效字符
  • 是否可以用 C# 为 Android 编写应用程序?

    我们都知道Android运行Dalvik VM程序 通常开发人员用 Java 编写程序并将其编译为 Dalvik 字节码 我想知道是否有可能创建一个可以接受 C 代码并将其编译为 Dalvik 字节码的编译器 嗯 这是一种选择 或者您可以在
  • 平衡两轮机器人而不使其向前/向后漂移

    我正在尝试设计一个控制器来平衡 2 轮机器人 约 13 公斤 并使其能够抵抗外力 例如 如果有人踢它 它不应该掉落 也不应该无限期地向前 向后漂移 我对大多数控制技术 LQR 滑模控制 PID 等 都很有经验 但我在网上看到大多数人使用 L
  • 发生错误。", ExceptionMessage: "提供的 'HttpContent' 实例无效

    尝试将文件添加到 http 休息调用时出现此错误 responseJson 消息 发生错误 ExceptionMessage 提供了无效的 HttpContent 实例 它确实 正在使用 多部分 参数名称 内容 异常类型 System Ar
  • 标准头文件中的 C 编译器错误 - 未定义的 C++ 定义

    我正在尝试编译 C 程序 但收到许多错误 这些错误是在标准 C 头文件 inttypes h stdio h stat h 等 中遇到的 错误的来源是以下未定义的常量 BEGIN DECLS END DECLS BEGIN NAMESPAC
  • 使用32位应用程序获取syswow64目录

    我正在尝试在系统目录中查找文件 问题是当使用 Environment SystemDirectory 在 x64 计算机上 我仍然获得 System32 目录 而不是 Systemwow64 目录 我需要在 x86 机器上获取 System
  • 在 C# 中加密并在 Flex 中解密

    我需要解密 Flex 中的一些数据 这些数据是用 C 加密并写入文件的 为了简单起见 我选择使用 as3crypto As3 库和 Bruce Schneier C 库 AS3 as3加密链接 http code google com p
  • 我可以在C中直接比较int和size_t吗?

    我可以比较一个int and a size t像这样的变量 int i 1 size t y 2 if i y Do something 或者我必须输入其中之一 只要满足以下条件 它就是安全的int为零或正数 如果它是负数 并且size t
  • 将参数从 Web 表单传递到 Crystal 报表

    我有一份报告 我想将其显示在网络表单上 没有参数的报告运行良好 带参数的报告让我很头疼 这是我在 BindReport 方法中编写的代码 该代码在表单的页面加载事件上调用 ReportDocument rpt new ReportDocum
  • #define, #ifdef #undef #endif

    我有以下代码 define PROC ADD void main void while 1 ifdef PROC ADD Do this code here then undefined it to run the code in the
  • 中继命令和无参数执行方法

    我目前正在学习 WPF 和 MVVM 我想我已经了解了大部分内容及其工作原理 但我在使用 RelayCommand 或 DelegateCommand 时遇到了一些我不明白的问题 我认为这与代表的工作方式有关 请注意 下面的代码目前仅处于测
  • 如何在Asp.Net Core中自定义开发者异常页面?

    这常见于ConfigureStartup cs 文件的方法具有如下所示的代码 if env IsDevelopment app UseDeveloperExceptionPage new DeveloperExceptionPageOpti
  • 你将如何开始自动化我的工作? - 第2部分

    后续这个问题 https stackoverflow com questions 2796128 how would you start automating my job 在经历了第一波进货 9 小时的复制 粘贴 后 我现在相信我已经满足

随机推荐

  • Prolog 中的流推理/反应式编程?

    我想知道您是否知道使用 prolog 进行流处理的任何方法 即某种反应式编程 或者至少让查询在不断更新的知识库 实际上是流 上运行 并不断输出推理的输出 在流行的 prolog 例如 SWI prolog 中实现了什么 您可以使用 Logt
  • 撤消 github 上的 git Push

    我犯了一个错误 而且我不知道如何修复它 我解释一下这个问题 我正在做我的项目 并且我做了第一次提交 在此提交中添加了 2 个大的无用文件 我不想要这些文件 所以我做了一个 git rm file 然后又犯了 我很愚蠢 因为我推到了 gith
  • 当设备语言更改时,TextView 显示 strings.xml 中不存在的字符串

    当我更改设备语言时 strings xml 中没有的字符串将显示在我的文本视图中 下面是我的文本视图代码
  • 为什么 FusedLocationApi.getLastLocation 为 null

    我正在尝试使用获取位置FusedLocationApi getLastLocation我在清单文件中获得了位置权限
  • 处理传入消息的最佳方式是什么?

    我正在为一个在线游戏编写一个服务器 最终应该能够处理 1 000 2 000 个客户端 我发现做到这一点的三种方法基本上是 1 个线程 连接 阻塞 制作客户端列表 并循环它们 非阻塞 选择 基本上是一次针对所有客户端的阻塞语句 并带有可选超
  • Vuex getter 未更新

    我有以下吸气剂 withEarmarks state gt var count 0 for let l of state laptops if l earmarks length gt 0 count return count 在组件中 这
  • 如何在 Visual Studio Code 中手动终止任务?

    Visual Studio Code 使我们能够在tasks json 中设置任务 我见过人们使用 监视 任务 但不知道如何手动终止它们 我这样做的唯一方法是尝试再次启动同一任务 这会提示我终止正在运行的任务 有键盘快捷键可以做到这一点吗
  • 为什么 $nin 比 $in 慢,Mon​​godb

    我有 5M 文档的集合 索引正确 in 工作完美 但相同的查询 nin 超级慢 这是什么原因 超级快 tech in Wordpress wordpress WORDPRESS 超级慢 tech nin Wordpress wordpres
  • 为什么 useEffect 不会在 window.location.pathname 更改时运行?

    Why 使用效果不运行window location pathname变化 我明白了loc仅记录一次 我怎样才能运行使用效果当路径名更改而没有任何附加库时 useEffect gt const loc window location pat
  • ASP.NET - 向用户发送 PDF

    我有一个创建 PDF 的过程 我希望这些 PDF 是临时的 短暂的 我希望能够在用户单击按钮时执行以下操作 string CreatePDF returns fileName pdf PromptUserToDownloadPDF Dele
  • Subversion 的奇怪问题 - 尝试重新创建曾经在我的存储库中的目录时“文件已存在”

    所以 我曾经有一个名为 mysql 的目录 几次修订前 我删除了它 并决定重新开始 但是当我尝试创建新的 mysql 目录时 我不断遇到 文件已存在 错误 support etc puppet modules mkdir mysql sup
  • 在 T4 中引用程序集时出现“找不到元数据文件”错误

    我有班级图书馆A和图书馆B与T4模板 B 引用 A 并且汇编指令存在于模板内 lt assembly name ProjectDir OutDir A dll gt 当我运行模板转换错误时显示 编译转换 元数据文件 path A dll 无
  • 函数使用 print 进行迭代,但不使用 return 进行迭代

    Python 新手 运行 2 7 我正在尝试创建一个程序 该程序使用函数生成文本 然后将函数生成的文本输出到文件 当只是在 powershell 中打印函数时 如下所示 http codepad org KftHaO6x http code
  • 如何始终显示两个日期选择器并在输入中设置默认日期

    我有两个输入 startdate and enddate 我正在使用 jQuery UI 的日期选择器 我有两个问题 1 如何使日期选择器始终显示 而不是单击输入时显示 当前代码仅显示enddate的日期选择器 当我单击其他输入时它将隐藏
  • 使用 Phonegap 离线浏览已知地图

    您好 提前谢谢您 我想问是否有一种方法可以编译已知的谷歌地图图块并将其加载到 Phonegap 应用程序中 更具体地说 我正在开发一个应用程序 涉及特定区域内的地理位置 路径导航等 由于应用程序的使用性质 例如 它可能用于野生动物 用户的手
  • 将返回的 JSON 对象属性转换为(低位在前)camelCase

    我从 API 返回了 JSON 如下所示 Contacts GivenName Matt FamilyName Berry 为了保持与我的代码风格一致 camelCase 小写首字母 我想转换数组以生成以下内容 contacts given
  • 我可以将 jQuery UI 1.12.1 与 jQuery 3.x 一起使用吗?

    我改变了我的 jQuery1 7 2 to 3 1 1并更改了我的 jQuery UI 版本1 8 16到版本1 12 1 我现有的很多 JS 东西都坏了 比如按钮的样式 以及dialog行为方式出乎意料 即一半的模式对话框被神秘的东西掩盖
  • 具有事件处理程序的 asp.net 动态按钮

    我在 ASP NET 中动态生成的按钮及其事件处理程序遇到了一个小问题 我为特殊用户生成了一个带有附加按钮的灵活表格 这些按钮将动态生成 效果很好 但我无法让事件处理程序工作 以下是我的代码中的一些片段 构建按钮 在自己的函数中 Butto
  • 使用 JavaScript 从 C# 执行 doPostBack

    您好 我有一个父页面 它打开一个弹出窗口 用户在子弹出页面上进行一些更改 然后单击保存按钮 当用户单击保存按钮时 我想PostBack到父页面 以便在弹出窗口中所做的更改可以在父窗口中看到 Question 如何实现上述场景 我想在aspx
  • 将单个 doc 文件转换为 pdf

    我正在使用以下代码如何以编程方式将 Word 文件转换为 PDF https stackoverflow com questions 607669 how do i convert word files to pdf programmati