【发布时间】:2010-11-17 14:52:47
【问题描述】:
我一直在开发一种实用程序,可以将各种文件转换为 PDF,以便于打印/发送电子邮件。我正在尝试添加对 CGM 文件的支持,但无法找到任何库来帮助我这样做。
这是我可以在 C# 中本机做的事情吗?或者是否有任何基于 .NET 的库可以帮助我转换 CGM 文件?
【问题讨论】:
我一直在开发一种实用程序,可以将各种文件转换为 PDF,以便于打印/发送电子邮件。我正在尝试添加对 CGM 文件的支持,但无法找到任何库来帮助我这样做。
这是我可以在 C# 中本机做的事情吗?或者是否有任何基于 .NET 的库可以帮助我转换 CGM 文件?
【问题讨论】:
它支持渲染到 Java Graphics 对象,并且不依赖于其他库。我不确定 IKVM 是否会支持所有必需的 Swing 调用,但它肯定会支持一些:AWT/Swing a Little Bit Less Unsupported
【讨论】:
在过去的雇主中,我们大量使用了 SDI 的 LIB_CGM 库:
http://www.sdicgm.com/cgm_output_library.html
这是用 C 编写的 - 所以虽然它不是原生的 .NET,但您应该能够在 C# 中将它用作非托管扩展。
Google 还提出了另一个 C 实现:
http://www.cgmlarson.com/industry/cgm_generator_library.php
我发现 CGM 很痛苦 - 它是具有大量供应商或行业特定扩展的格式之一。我在地球物理学/地震行业,CGM 仍然被大量使用,但有扩展!由于 CGM 似乎主要用于特定行业的应用程序(例如地震行业中的 CGM+),我怀疑供应商对易于跨平台的 C 应用程序而不是仅 PC 解决方案(例如 .NET)更感兴趣。用户通常希望在从大型钢铁超级计算机到台式机的所有设备上使用他们的第三方库(尽管我们一直在积极地在超级计算机上绘制功能!)。
【讨论】: