获得了一个旧模块,该模块使用sparx ea项目中的数据生成报表。Spax EA将图表导出为Word文档的最佳方式
有一部分需要将图表作为图片插入文档中。
现在它看起来像
public static void copyDiagram(
EA.Diagram diagram,
EA.Repository eaRepository)
{
eaRepository.App.Project.PutDiagramImageOnClipboard(diagram.DiagramGUID, 0);
eaRepository.CloseDiagram(diagram.DiagramID);
}
复制到剪贴板,后面还有那张像 currentDocumentRange.Paste()
我看起来很奇怪。 我认为使用剪贴板不太好,所以我想在将来重写它。
所以,唯一的其他功能,我发现有看起来像PutDiagramImageToFile(diagrammGUID, path, type)
如果没有更好的选择是好创建新的文件,之后它是得到它的路径插入到Word文档,然后将其删除?
或者,也许还有一些其他的SparxEA功能,从byte[]
格式或像Image
格式获取图形图?
什么方式更好?
为什么通过文件工作,如果你可以通过剪贴板做同样的内存?这种方法没有任何问题。 –
@ThomasKilian好,在我的情况下,剪贴板的问题出现在这里(问题下的第一条评论)http://stackoverflow.com/questions/41055211/task-run-from-ui-thread-throws-sta-error – DanilGholtsman
@ ThomasKilian这就是为什么我想减少代码中的所有剪贴板调用我与 – DanilGholtsman