在WPF C#应用程序中将XPS转换为PDF

本文关键字:XPS 转换 PDF WPF 应用程序 | 更新日期: 2023-09-27 17:59:46

我需要将我用应用程序创建的XPS文件转换为PDF文件,最好的方法是什么?我更喜欢使用托管程序集从C#内部完成此操作。

开源是首选的第三方解决方案

在WPF C#应用程序中将XPS转换为PDF

您可以使用XpsDocument类读取XPS文件,然后使用PDF库(如Report.Net或#PDF)将其导出。我在.Net 1.1中使用了#PDF,但不确定它是否可以轻松转换为.Net 2.0。

#PDF:http://sharppdf.sourceforge.net/

Report.NET:http://report.sourceforge.net/

开源托管程序集可能很难找到,但您可以在tallcomponents.com上查看可能有帮助的商业产品。您可以查看GhostScript.com,它是开源的,支持XPS和PDF,尽管在没有许可证的情况下重新分发它可能会遇到问题。

使用Ghostscript将XPS转换为PDF文档。请参考以下代码片段将XPS转换为PDF

Process process = new Process();
process.StartInfo.FileName = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "ghostxps-9.54.0-win32", "gxpswin32.exe");
process.StartInfo.Arguments = $"-sDEVICE=pdfwrite -sOutputFile='"{pdfFilePath}'" -dNOPAUSE '"{xpsFilePath}'"";
process.Start();
process.WaitForExit();

有关详细信息,请参阅以下链接。单击此处。

虽然不是免费的,但Amyuni PDF Creator.Net支持加载XPS文件并将其保存为PDF。

适用通常的免责声明