2011-04-20 98 views
0

我目前正在Silverlight中編寫一個應用程序,它需要一個控件來顯示Word 2003文檔。我也可以在webservice發送它之前轉換文檔,但2003年的格式似乎是相當苛刻的操縱。我知道有一些軟件可以做到,但你必須購買它們。你有任何線索可以幫助我進步嗎?在Silverlight 3中顯示Ms Word 2003 .doc

回答

0

您希望達到的保真度級別是多少?

我敢肯定,這樣的「最簡單」的方法是將文件以XPS服務器端轉換(與XPS打印機也許),然後操縱它來創建一個Silverlight兼容的內容(XAP)

爲什麼這個?因爲,例如:

  • Silverlight不支持流文檔,因此您不希望在客戶端上執行佈局。
  • Silverlight需要將字體包含在使用它的同一個XAP中(即使在同一個程序集中),因此您需要生成一個將字體嵌入到服務器端的程序集。
  • XPS是一個壓縮包中的XAML(因此比Word2003 doc更好管理),但它不是Silverlight Xaml,需要先將它轉換爲Silverlight,然後才能在Silverlight應用上讀取它(使用XSLT?請注意,有些計算需要將視口轉換爲縮放/平移轉換)。好消息是任何佈局問題都在XPS生成過程中得到了關注。

我有一個實習生爲一年前的Silverlight設計了XPS閱讀器原型。它的工作,但渲染並不完美(但我可能已經有更多的工作)

總而言之:這是可能的,不是很複雜,但需要很多工作和實踐在一些領域(從XSLT組裝生成,以及XPS規範的知識)。但我不知道有任何免費解決方案。

因此,我會推薦使用可用(和工作)解決方案,而不是採取風險發展的路線。

+0

感謝您的詳細解答。我會嘗試XPS的轉換。失去一些忠誠不會是一個問題。 – Louhike 2011-04-20 09:44:12

+0

然後忘記字體等東西。這樣你就不必在服務器上生成程序集。 – Eilistraee 2011-04-20 10:27:21