我有一个现有的XPS文件,我想将其用作模板,并可能将数据绑定到它。我尝试了几种方法,但似乎无法使它工作。
有没有人有改变现有XPS文件在运行时添加数据然后打印或保存的经验?
感谢任何帮助。
答案 0 :(得分:1)
XPS文档符合Open XML标准。有一个用于处理这些文档的SDK。以下是Beth Massi撰写的How-to文章:“Accessing Open XML Document Parts with the Open XML SDK”。
由于您正在使用内部文档结构,因此您还可以查看“Open XML Package Editor”,它可以让您使用Visual Studio浏览文档。以下是Beth Massi的另一个方法:“Handy Visual Studio Add-In to View Office 2007 Files” 。
+汤姆
答案 1 :(得分:1)
答案 2 :(得分:0)
在写入XPS文档的过程中评估绑定。因此,您无法在FixedDocument中设置{Binding},将该FD写入XpsDocument,并希望在您下次打开该已保存的文档时再次返回原始FD。
此外,标准的XpsWriter确实会将所有内容转换为画布上的字形,因此您不能使用原始文本框中的文本框,并希望能够在将文档保存到文档后找到它。
我从来没有使用过NiXPS库,所以如果Nick说它可以完成,你可能需要查看它。
最后一种可能性 - 您可以在以后可以找到的表单中创建占位符。它们必须是文本(类似于[[{{FORMFIELDHERELOL}}]]),并带有某种分隔符方案,以区分文本和其他所有内容。然后,您可以在XML中查找符合分隔符模式的文本,并为绑定文本切换出这些字形。当然,这个问题是如果你没有用X字符代替X字符,你可能会发现你必须做一些重新定位。由于它在画布上的所有字形,这可能比用鞋带穿针更难。