将VSD(visio)导出到文本文件

时间:2010-01-12 14:28:27

标签: batch-file export indexing visio text-files

我不是程序员,但我确信这个社区可以提供帮助。

我在局域网共享中有VSD文件的thosands,我想创建一个简单的可搜索索引。我希望能够以明文形式提供每个VSD文件的内容,以便在windows或unix shell脚本中进行操作,可用于搜索clear txt输出。

你们有人可以帮忙吗?

5 个答案:

答案 0 :(得分:3)

您可以探索多种选择:

1。使用Windows中的内置搜索功能

这需要一个可以为您索引Visio格式的IFilter。以下链接是Microsoft提供的IFilter。

Visio IFilter 2003 Add-in: Text Search in Visio Files

评论

  • 不需要编码
  • 应该与桌面搜索功能很好地集成(我还没有验证过这个)
  • 搜索功能由IFilter实现驱动。它可能无法索引想要的东西。

免责声明:我从未安装过IFilter,所以我无法评论它的工作情况。

2。使用Visio对象模型获取明文(由M.A. Hanin回答)

如果您只需要形状的纯文本,这非常简单。如果您需要从自定义属性等内容中获取文本,那么它将会更复杂一些。如果沿着这条路走下去,我构建了一个库来帮助更轻松地使用Visio 2007 对象模型 - 寻找一个名为VisioAutomation on Codeplex.com的项目

评论

  • 需要Visio对象模型的编码和知识(不会太复杂)
  • 如果你真的有数千个文件,这可能需要一段时间。

3。使用VDX文件获取明文

此技术意味着将visio文件保留(或转换)为VDX文件,这是一种XML格式。您可以轻松地从XML获取纯文本。

评论

  • 需要编码并且对Visio对象模型(执行导出)知之甚少
  • 主要是工作涉及XML编码
  • 如果您确实有数千个文件,生成VDX文件可能需要一段时间。

我有直接使用VDX格式的经验 - 编写代码来处理它非常容易。

答案 1 :(得分:1)

您可以使用开箱即用的Visoi

执行此操作

Visio 2003转到工具 - >报告。

Visio 2007转到数据 - >报告。

Visio 2010 Beta转到评论 - >分享报告。 (感谢Francisco)

这些说明适用于Visio 2007。

制作新报告,然后在当前页面上的所有页面或形状上选择形状。

然后仅选择(您可能希望显示所有属性以确保无效 检查其他)

给它一个标题,例如:纯文本报告

给它一个名称,例如:Text_Only_Report

然后选择运行并将其导出为Excel,HTML,Visio Shape或XML

来源:http://kenfallon.com/getting-text-out-of-visio-drawings/

答案 2 :(得分:0)

Microsoft为操作Visio文档的内容提供了一个很好的界面。 可以创建一个自定义工具,遍历您共享中的每个VSD文件,提取您感兴趣的信息,并以您希望的任何文本格式保存该信息。

首先定义您在这些VSD文件中感兴趣的信息。

答案 3 :(得分:0)

感谢您的帮助,我已经使用了安装了索引服务visio ifilter的服务器2003的解决方案。该索引针对UNC共享运行,我从网站上捏了一个指南,为索引查询引擎构建了一个IIS前端。似乎安静地工作在测试单元上,但我还没有针对主存储库进行设置。

您的建议当然会给我进一步阅读的想法。

非常感谢所有人!

答案 4 :(得分:0)

SVG是另一种可能对您有用的“明文”格式。使用UNIX shell命令vsd2svg,您可以自动将所有VSD文件转换为SVG。 http://dia-installer.de/vsd2svg