【问题标题】:Spire.PDF.PdfDocument.print() throws System.NotImplementedException on Ubuntu LTS 20.04Spire.PDF.PdfDocument.print() 在 Ubuntu LTS 20.04 上抛出 System.NotImplementedException
【发布时间】:2021-03-19 19:31:16
【问题描述】:

编辑:我联系了开发团队。他们为此创造了问题。如果有任何改进,我会更新这篇文章。 Issue Link

该项目使用 .netCore3.1 进行编码。我还使用了 FreeSpire.PDF v5.4。我使用 Spire.Pdf.PdfDocument 将传入的 pdf 数据转换为 pdf 并触发打印过程。Windows 上的所有测试都成功。 在 Linux 上,它能够将数据(base64String)转换为 pdfDocument。但是在打印过程中它抛出了 NotImplementedException(你可以在 SS 中看到)。

message: The method or operation is not implemented.

source: System.Drawing.Common

System.Drawing.Common 用于 Spire.PDF。我没有将其包含在项目参考中。 (我后来加了,结果还是一样。)

在这个阶段我不明白该怎么做。我使用的所有 DLL 都与 .net 标准或 .netCore 兼容。我也没有在 windows 中遇到任何错误。我该如何解决这个问题?

另外一个观点,不使用Spire.PDF.PdfDocument.print()方法,我可以通过触发打印机来打印吗?

【问题讨论】:

  • DLL 是 .NET Standard 2.0 的事实与它们是否真正支持 Linux 或 Windows 无关,您为什么会这么认为?
  • .NET Standard 2.0 DLL 支持在 .NET Core 3.1 上运行。使用 Windows 窗体的 DLL 仅适用于 Windows。不使用 Windows 窗体的 .NET Standard 或 .NET core dll 不应该在 Linux 上运行吗?

标签: c# asp.net-core-3.1 system.drawing spire system.drawing.common


【解决方案1】:

PlatformNotSupportedException 与任何版本的 .NET 无关。这不是自动抛出的异常,它是编写库的人选择抛出的异常,表示该代码运行的平台尚未满足该代码的需求。

唯一的解决方案是更新到较新版本的库,希望能够实现该平台的功能。

【讨论】:

  • 感谢您的回答。我没有在堆栈上看到这个异常。我联系了开发团队。我编辑了主要文章并放了一个链接。
猜你喜欢
  • 2021-06-22
  • 1970-01-01
  • 2021-08-18
  • 2020-09-29
  • 2020-08-07
  • 1970-01-01
  • 2021-03-31
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多