c# - XPS 到 PDF 转换
问题描述
我正在研究有助于将 XPS 转换为 PDF 的代码。NuGet 库是否有一个免费库可以帮助我实现上述目标,或者我是否可以编写自己的 C# 代码进行转换。不知道从哪里开始。
我一直在寻找免费库,遇到 iTextSharp 不确定它是否支持 XPS 到 PDF 的转换,因为我在 NuGet 库描述https://www.nuget.org/packages/iTextSharp/5.5中没有看到关于 XPS 的字眼.13.1
解决方案
PDFsharp似乎是你想要的。请参阅WPF 到 XPS 到 PDF。
另请参阅https://nathanpjones.com/2013/03/output-to-pdf-in-wpf-for-free/:
using System.IO;
using System.IO.Packaging;
using System.Windows.Xps.Packaging;
using System.Windows.Xps;
MemoryStream lMemoryStream = new MemoryStream();
Package package = Package.Open(lMemoryStream, FileMode.Create);
XpsDocument doc = new XpsDocument(package);
XpsDocumentWriter writer = XpsDocument.CreateXpsDocumentWriter(doc);
writer.Write(dp);
doc.Close();
package.Close();
var pdfXpsDoc = PdfSharp.Xps.XpsModel.XpsDocument.Open(lMemoryStream);
然后
PdfSharp.Xps.XpsConverter.Convert(pdfXpsDoc, d.FileName, 0);
或者对于 XPS 文件,
PdfSharp.Xps.XpsConverter.Convert(sourceXpsFile, destPdfFile, 0);
推荐阅读
- python - Apache Airflow - 在 dag 和日期更改的每个任务中重新运行 Prescript
- java - 无法识别 ADB 命令
- javascript - 如何仅允许文本字段使用字母,验证“OnClick”事件?请纠正我我的脚本做错了什么
- r - R中的情节忽略了看起来像日期的字符串的自定义刻度线?
- elasticsearch - 在 wordlist 上实施 Google 自定义搜索
- mysql - 从表中选择查询并加上表名作为列
- directus - Directus 多对多返回反转数据
- go - Google Cloud Functions 的供应商依赖项是否有性能优势?
- javascript - 密码验证正则表达式之外的数字或特殊字符要求
- php - 点击提交后如何将数据插入数据库?