0

我目前正在 Silverlight 中编写一个应用程序,该应用程序需要一个控件来显示 Word 2003 文档。我也可以在 web 服务发送之前转换文档,但是 2003 格式似乎很难操作。我知道有一些软件可以做到这一点,但你必须购买它们。你有什么线索可以帮助我进步吗?

4

1 回答 1

0

您想要达到的保真度是多少?

我很确定这样做的“最简单”的方法是将文档转换为 XPS 服务器端(可能使用 XPS 打印机),然后对其进行操作以创建与 Silverlight 兼容的内容(XAP)

为什么这个?因为,例如:

  • Silverlight 不支持流文档,因此您不希望必须在客户端上执行布局。
  • Silverlight 要求字体包含在使用它的同一个 XAP 中(即使在同一个程序集中),因此您需要生成一个程序集,其中嵌入了服务器端的字体。
  • XPS 是 zip 中的 XAML(因此比 Word2003 文档更易于管理),但它不是 Silverlight Xaml,您需要先将其转换为 Silverlight,然后才能在您的 Silverlight 应用程序上读取它(使用 XSLT?请注意,那里是将视口转换为缩放/平移变换所需的一些计算)。好消息是在 XPS 生成过程中解决了所有布局问题。

一年前,我有一个实习生为 Silverlight 设计了 ​​XPS 阅读器的原型。它有效,但渲染并不完美(我本来可以做更多的工作)

一句话:这是可能的,不是很复杂,但需要在几个领域(从 XSLT 到程序集生成,以及 XPS 规范的知识)中进行大量工作和实践。但我不知道有任何可用的免费解决方案。

因此,我建议使用可用(且有效)的解决方案,而不是采取冒险的开发路线。

于 2011-04-20T09:27:14.710 回答