WPF - 将 XAML 内容导出到文件(PDF 或 Word)

问题描述 投票:0回答:2

我有一个非常简单的 WPF 应用程序,但有很多表单(近 80 个),分布到 UserCcontrol xaml 文件中,并在主 Window 文件上使用 TabControl 进行导航。其中一些表单包含大量数据,但基本上所有内容都分解为 TextBlock、TextBox、Label、Grid、RadioButton 和 ComboBox 控件。

我已经完成了所有内容,但有一个要求,即最后的所有内容都应导出到文件中 - 无论是 PDF 还是 Word。有没有简单的方法可以做到这一点?我不要求具有相同的样式和格式。我只需要文本 - 问题和给出的答案,可以是文本,也可以是所选选项。

我在网上搜索并看到了很多解决方案,但我相信 PdfSharp 是最好的。但是,我确实有很多表单,将每个用户控件映射到循环或其他内容中以写入文件将是一种矫枉过正。创建位图或图像并打印到文件不会有帮助,因为我有滚动的文本框,并且在这种情况下整个文本将不可见。

最适合我的是一个库,它接受用户控件,然后将其内容打印在文件的页面上。再说一次 - 我不需要任何样式或格式或图像,只需文本。

以下是其中一种表单的一个小示例,仅供您参考: enter image description here

提前谢谢您!

c# wpf xaml pdf ms-word
2个回答
0
投票

我已经寻找过类似的工具,但没有太多,特别是如果您正在寻找开源的东西。

最直接的方法是使用 System.Windows.Automation 命名空间中的工具。这应该可以帮助您编写一些辅助函数,这些函数可以从控件中的所有元素捕获文本。

这个链接应该会有帮助: https://learn.microsoft.com/en-us/dotnet/framework/ui-automation/obtain-text-attributes-using-ui-automation


0
投票

尝试看看这是否有效。

https://docpose.com/tools/converter/xaml

它说它可以将xaml转换为pdf

如果不是,那为什么不将 xaml 转换为 html,然后再转换为 pdf

html https://codebeautify.org/xml-to-html-converter

pdf https://html2pdf.com/

© www.soinside.com 2019 - 2024. All rights reserved.