Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将GraphViz/Dot转换为Powerpoint图形_Graph_Powerpoint_Graphviz_Dot - Fatal编程技术网

将GraphViz/Dot转换为Powerpoint图形

将GraphViz/Dot转换为Powerpoint图形,graph,powerpoint,graphviz,dot,Graph,Powerpoint,Graphviz,Dot,我试图在Powerpoint中从一个GraphViz图形转换成一个图形。但是,当它在Powerpoint中时,我希望能够编辑各个节点、边和边界。这意味着将GraphViz导出为图像文件将不起作用 有人知道从GraphViz到Powerpoint的途径吗 如果知道.PPTX文件的XML结构,可以将GraphViz图形导出为SVG(实际上是一种文本格式),然后解析它并发出创建.PPTX文件所需的XML。我知道这是一个很难的方法 与所有Microsoft“open document”格式一样,.PPT

我试图在Powerpoint中从一个GraphViz图形转换成一个图形。但是,当它在Powerpoint中时,我希望能够编辑各个节点、边和边界。这意味着将GraphViz导出为图像文件将不起作用


有人知道从GraphViz到Powerpoint的途径吗

如果知道.PPTX文件的XML结构,可以将GraphViz图形导出为SVG(实际上是一种文本格式),然后解析它并发出创建.PPTX文件所需的XML。我知道这是一个很难的方法

与所有Microsoft“open document”格式一样,.PPTX实际上只是一个包含许多元素的ZIP文件,描述图形的XML就是其中之一。

您可以在Windows上使用GraphViz从.dot文件生成.emf(增强型图元文件)图像。您可以将.emf文件导入到PowerPoint演示文稿中,然后将其解组(多次)以将其分解为各个形状


这很好,但不幸的是,图形的边没有变成连接器。相反,它们是线的图片,因此当您移动图形中的任何节点时,它们不会重新路由。

谢谢@TomServo。这个答案在技术上是可能的,但如果不花费大量的精力和时间,就几乎无法正确回答。这是真的,所以如果有一段时间没有人回答,我会接受的。@greedyfoddha毫无疑问这很难。我以前曾半解析过SVG以提取某些大小元素,但要解析并重新发出它是一项艰巨的任务。我在一个“不可能”的地方工作,那里可能会有人被炒鱿鱼。。。。所以我想我会分享一些亲密的东西@如果您有Office 365订阅版本,并且该版本最近已更新,则可以直接导入SVG文件,在某些情况下,可以将其解组。SVG支持对于PPT来说是相当新的,所以它可能不支持SVG能够支持的所有功能。如果您没有这个版本,但想测试它,我很乐意尝试导入和取消分组一两个文件。将它们发布在Dropbox或类似网站上,并在此处弹出链接。谢谢@SteveRindsberg,我没有Office 365,而且它在我的Powerpoint 2016 for Mac中不起作用。“我会看看是否可以在Office 365上购买一个帐户来测试这一点。”@SteveRindsberg。我崩溃了,得到了Office 365订阅,但仍然没有运气。在在线版本中,我上传了一个svg,上面写着“对不起,我们只支持jpg…文件”。如果我使用桌面版本,它只会出现一个无法识别的图片图标。使用svg将保存的桌面版本传输到在线版本也不起作用。导出到emf和导入到PowerPoint对我来说不起作用,节点对于它们包含的文本来说突然变小了。