原創|使用教程|編輯:郝浩|2013-03-18 13:50:06.000|閱讀 362 次
概述:最近接到一些客戶的反饋,反映無法在Mono中運行PDFRasterizer.Net,讓其無法使用PDFRasterizer.Net跨平臺轉換創建PDF。本文帶來針對這個問題的解決方案。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
最近接到一些客戶的反饋,反映無法在Mono中運行PDFRasterizer.Net,讓其無法使用PDFRasterizer.Net跨平臺轉換創建PDF。雖然PDFRasterizer.Net至今沒有正式宣布支持Mono,但是慧都秉著服務客戶的態度,進行了一系列的測試。
在安裝MonoDevelop后,我們將PDFRasterizer.Net官方提供的一些Sample放入其中運行,發生了和客戶反饋一樣的問題:CS1566錯誤。
為解決這個問題,我們手動調用了所有.resx文件,以便調試,不過又出現以下問題。
很明顯這是一個MonoDevelop運行調試的問題,如果不進行調試,便不會發生錯誤,所有我們放棄了在Windows中進行進一步的調試。如不進行調試,PDFRasterizer.Net將正常運行,如下圖。
接下來測試,在Mac OSX環境中使用MonoDevelop運行Sample。同樣報錯“錯誤CS0584”。
這個錯誤和WPF有關,但PDFRasterizer.Net中并沒有使用任何WPF的功能,所有我們懷疑是.Net 4.0的原因,故我們卸載了.Net 4.0,重新安裝.Net 2.0。然后測試PDFRasterizer.Net的Sample便可以正常啟動了。
不過我還是有些小問題,如上圖看到的,Sample中的水印不見了。這也許對某些用戶來說是一件好事,但還有在OSX中PDFRasterizer.Net運行還是有其他問題:
這兩個問題已經向官方反映,只有期待PDFRasterizer.Net官方更新新版本來解決了。
接下來,我們測試在MonoDevelop下編譯PDFRasterizer.Net源。首先是在Windows環境中測試的。使用過MonoDevelop的開發者都知道,他的編譯器和標準的Microsoft .Net相比還是有一定的局限性的,比如vars和擴展方法上的容易報錯,將這些錯誤修復后,PDFRasterizer.Net源運行正常。接下來是OSX,只在flagged中發生了一些小錯誤,其他運行正常。
經過測試PDFRasterizer.Net在MonoDevelop 3.0.5 for windows和MonoDevelop 3.1.1 for OSX都可以正常進行編譯。
Mono雖然聲稱自己是一個可以跨平臺的運行環境,不過他在OSX中運行得并不算太穩定。使用PDFRasterizer.Net + Mono進行跨平臺的PDF生成和瀏覽,現階段通過以上測試,還是比較可行的,至少幾乎全部基本功能是在實現的。不過我們還是期待PDFRasterizer.Net在下一版本中,能對TallBitmap渲染器進行改進,徹底解決OSX渲染不完全的問題。
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉載自:慧都控件網