将具有邮件合并逻辑的WordPerfect文件转换为.docx



我正在使用大量.frm.wpdWordPerfect 文件,我正在尝试将它们转换为.docx,同时保留所有邮件合并逻辑。

将文件另存为WordPerfect X6中的.docx文件或从Word 2016中打开.frm/.wpd文件都会导致邮件合并代码完全丢失。

有没有办法转换 WordPerfect 文件,以便它们以.docx格式保留类似的合并功能?

这是一个有点疯狂的方法:

使用 WP_Reader 分析文档。

收集所有相关的合并函数(有一堆合并命令,您必须弄清楚需要将哪些命令转换为 Word 合并字段)。

制作一个字典,将每个需要的合并函数翻译成其WP字符串"代码"(用于搜索目的)。

编写一个简单的 WordPerfect 宏,该宏使用传入变量搜索每个合并"代码"并将其替换为唯一的文本标记。

使用 WordPerfect.PerfectScript 界面打开文档。

使用PerfectFit.PerfectScript接口调用WP宏,并传入要替换为其唯一标记的每个合并函数。 您无法对 WordPerfect 文档进行 .NET 调用以搜索任何非 ASCII 文本的内容,因此您被迫使用宏和 PerfectFit 来执行此操作(谢谢,Corel!)。

将 wpd 文档另存为 Word 文档(或者可能更安全,使用 Office 互操作执行此操作)。

使用 Office 互操作命令查找每个唯一标记并将其替换为新的合并域(我对这部分的工作原理有点模糊)。

此方法有一些注意事项:

当前形式的WP_Reader不对任何合并函数进行建模。 这将需要一些编码,但方法非常简单。 我是唯一一个从事这个项目的人,并且还没有需要这些功能。 所有合并函数要么没有参数,要么有 1 个或多个字符串。 这些函数应该很容易建模,我可以帮助您入门。

.frm.dat文件实际上是WordPerfect文件,它们被设置为合并文档和合并文档的数据源(也许它们也用于其他目的)。 您可以使用WP_Reader对这些文件进行建模,就像对这些文件建模一样.wpd

仅当您具有非常简单的合并文档时,此方法才有效。 WordPerfect 合并领域包括自己的语言,独立于 WP 命令集。 有一些If语句、For循环等不会在 Word 文档中转化为任何有用的内容。

在尝试这个耗时的项目之前,请查看 LibreOffice 是否将带有合并代码的 wpd 文件直接转换为.odt格式。 lib-wpd 项目是 LibreOffice 中的一个内置程序,自 2003 年左右以来一直在运行,他们可能已经合并了此功能。 从.odt转换为.docx应该很容易做到。

相关内容

  • 没有找到相关文章

最新更新