c# - 是否有用于将 WPF FlowDocument 转换为 WordML 的开源 XSLT?

标签 c# wpf xslt openxml wordml

我想使用允许用户编辑和格式化文本的 WPF RichTextBox。这种格式化的文本最终将与我们的一些其他自定义 XML 数据一起进入 Word 文档。

我发现了几个从 WordML 到 FlowDocument 的示例,但没有找到将 RichTextBox FlowDocument 到 WordML 的示例。

有没有可以用来将 WPF FlowDocument 转换为 WordML 的开源 XSLT 文件,而不是重新发明轮子?

我不是在寻找 100% 的解决方案(例如表格、数字、绘图等)。此时,我只对保留字体格式、段落、项目符号列表等感兴趣。

编辑:

如果可能,我需要避免使用 Word Interop 或昂贵的第 3 方工具(例如 Apose)。我正在寻找一种优雅的方式将一些基本的 FlowDocument XML 格式的内容转换为 OpenXML,最好是通过 XSLT。由于我对嵌入式图片等项目不感兴趣,我相信它可能是可行的,因为我已经找到了另一个方向的示例(即 OpenXML/WordML 到 XAML Flowdocument)

最佳答案

我在搜索中找到了几个解决方案。最简单的方法可能是转换为支持所有必需的 XSLT 内容的 .rtf 格式。这解释得很好here .

我在网上找到的另一种解决方案是有人转到 PDF,但首先转换为 .DOCX。你可以找到他的解决方案here .如果您只想要转换为 .DOCX 的部分,则需要编辑掉他的代码,这样 .DOCX 就不会被 .PDF 替换。

根据项目工作方式的详细信息,您可能会发现 this有趣。

希望对您有所帮助。目前没有直接的方法可以使用单个 API 执行此操作。您需要转换为某种格式,如 .XPS、.RTF 等,然后从它们使用另一个 API 转换为 WordMl。

编码愉快!

关于c# - 是否有用于将 WPF FlowDocument 转换为 WordML 的开源 XSLT?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14468675/

相关文章:

xml - 为什么//后代也在这个 XSLT 模板中评估 sibling ?

c# - 从每一帧视频中捕获单个像素行并将它们编译在一起

Wpf Combobox Equals 方法不合逻辑的行为

c# - 如何将某些颜色分类到颜色范围?

asp.net - 在后台或ASP.Net环境中使用WPF控件

XSLT 跨节点和文本排序

html - 如何在 XSLT 中锚定标记?

c# - 在数据 GridView 中添加多个按钮

c# - UPDATE 语句中的语法错误 OleDb 异常

c# - 如何使用CefSharp获取网页加载的资源