如何将 DocX 从 ​​Xceed.Words.NET 库转换为 pdf 并将其保存在内存流中

0 c# pdf docx

我想将字字节数组转换为 pdf 字节数组。我正在使用 Xceed.Words.NET 库

var stream = new MemoryStream(sourceFile.AttachedFile);
var doc = DocX.Load(stream);
var ms = new MemoryStream();

doc.SaveAs(ms);

var wByteArray = ms.GetBuffer();
Run Code Online (Sandbox Code Playgroud)

Haz*_*ton 5

用这个:

var stream = new MemoryStream(sourceFile.AttachedFile);

using (var document = DocX.Load(stream))
{
    stream = new MemoryStream();
    DocX.ConvertToPdf(document, stream);
}

var bytes = stream.ToArray();
Run Code Online (Sandbox Code Playgroud)

如评论中所述,您需要专业版的 DocX 库才能将 Word 文档转换为 PDF。

如果您正在寻找免费解决方案,那么也许您可以尝试GemBox.Document,它的免费版本确实支持转换为 PDF,但它有文档大小限制。
你可以这样使用它:

ComponentInfo.SetLicense("FREE-LIMITED-KEY");

var stream = new MemoryStream(sourceFile.AttachedFile);
var document = DocumentModel.Load(stream, LoadOptions.DocxDefault);

stream = new MemoryStream();
document.Save(stream, SaveOptions.PdfDefault);

var bytes = stream.ToArray();
Run Code Online (Sandbox Code Playgroud)