下面是详细的攻略:
准备工作
-
在官网 Aspose.Words for .NET 下载最新版的 Aspose.Words for .NET。
-
创建一个 C# 控制台应用程序,导入 Aspose.Words.dll。
using Aspose.Words;
代码实现
- 使用 Aspose.Words 加载 Word 文件。在加载过程中,Aspose.Words会自动将Word文件转化为一个包含Word文档所有内容的基础文本结构。
Document doc = new Document("input.docx");
- 创建一个保存PDF文件的流对象。
MemoryStream outputStream = new MemoryStream();
- 使用 Aspose.Words 将 Word 文件转成 PDF。在转换过程中,Aspose.Words会自动创建 PDF 文档对象,将所有 Word 内容转化为 PDF。
doc.Save(outputStream, SaveFormat.Pdf);
- 将 PDF 文件保存到本地磁盘。
FileStream fileStream = new FileStream("output.pdf", FileMode.Create, FileAccess.Write);
outputStream.WriteTo(fileStream);
fileStream.Close();
outputStream.Close();
示例展示
示例1
我们有一个名为input.docx
的Word文件,在C:\Docs
文件夹下,我们希望将其转成PDF文件,并保存为output.pdf
。
将以下代码粘贴到项目中的 Program.cs
文件中:
using System;
using System.IO;
using Aspose.Words;
namespace WordToPdf
{
class Program
{
static void Main(string[] args)
{
string inputPath = @"C:\Docs\input.docx";
if (File.Exists(inputPath))
{
// 1. 加载 Word 文件
Document doc = new Document(inputPath);
// 2. 创建保存 PDF 的 Memory Stream
MemoryStream outputStream = new MemoryStream();
// 3. 将 Word 文件转换成 PDF
doc.Save(outputStream, SaveFormat.Pdf);
// 4. 将 PDF 文件保存到磁盘
FileStream fileStream = new FileStream(@"C:\Docs\output.pdf", FileMode.Create, FileAccess.Write);
outputStream.WriteTo(fileStream);
fileStream.Close();
outputStream.Close();
Console.WriteLine("File converted successfully!");
}
else
{
Console.WriteLine("Input file does not exist.");
}
Console.ReadKey();
}
}
}
运行程序后会生成一个名为output.pdf
的PDF文件,它实际上是输入的Word文件转换而来的。
示例2
我们有一个名为input.docx
的Word文件,存储在内存中的字节数组docBytes
中,我们希望将其转成PDF文件,并打印出转换时间。
将以下代码粘贴到项目中的 Program.cs
文件中:
using System;
using System.Diagnostics;
using System.IO;
using Aspose.Words;
namespace WordToPdf
{
class Program
{
static void Main(string[] args)
{
// 1. 加载 Word 文件
Document doc = null;
using (MemoryStream stream = new MemoryStream(docBytes))
{
stream.Seek(0, SeekOrigin.Begin);
doc = new Document(stream);
}
// 2. 创建保存 PDF 的 Memory Stream
Stopwatch watch = Stopwatch.StartNew();
MemoryStream outputStream = new MemoryStream();
// 3. 将 Word 文件转换成 PDF
doc.Save(outputStream, SaveFormat.Pdf);
// 4. 将所需时间打印出来
Console.WriteLine("Conversion finished in " + watch.Elapsed);
watch.Stop();
outputStream.Close();
}
}
}
运行程序后,它会打印出转换所需的时间。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C# 利用Aspose.Words.dll将 Word 转成PDF - Python技术站