有没有办法在启用抗锯齿的情况下绘制 emf 图元文件(从绘图工具导出)?我尝试的工具无法导出抗锯齿的 emf 文件,所以我想知道在我的控件的 OnPaint 覆盖中绘制 emf 时是否可以手动重新打开它。
如果有人可以确认在技术上可以生成抗锯齿 emf 文件,另一种解决方案是使用可以导出到抗锯齿 emf 的绘图工具,或者稍后让 3rd 方转换器执行此操作。如果有人知道这样的工具,请告诉我。
编辑:在查看emf 指令时,似乎 emf 本身实际上不能存储信息,无论是否要进行抗锯齿处理。至少我什么都找不到。抗锯齿更有可能是由播放引擎完成的。例如,当我在 Word 2007 中打开一个 emf 时,它会呈现抗锯齿。但当我用 GDI+“播放引擎”( Graphics.DrawImage(...)
) 绘制它时不是这样。或者当我查看标准的 Windows 图像查看器时。这让我相信有些工具实际上有自己的 emf 播放引擎。因此,也许有免费的 .NET 库(最好带有源代码),它为我提供了存储在已解析的 emf 文件中的 emf 指令的对象模型,这样我就可以自己播放它而不是使用Graphics.DrawImage(...)
?