[轉]silverlight打印慢的問題

原文地址:

http://www.cnblogs.com/rocket2012/archive/2012/12/01/2797455.html

 

用silverlight技術做了兩年的開發了,對於它的打印,我一直都是一個門外漢。silverlight打印慢的問題,從去年就提出了,當時使用的是silverlight4,於是寄希望於silverlight5的矢量打印能解決這個問題。今年silverlight5出來了,但是矢量打印卻是個坑爹玩意,於是,打印慢的問題仍然困擾着我們。

今年年底,各個地方都在用我們的電子政務做農村集體確權登記,幾萬份的申請書、審批表和土地證要打印,打印慢的問題越來越突出。開發經理DY是想用華表去做打印。
這兩天有趣的事情發生了。項目經理WBJ拿一個國外的silverlight報表工具demo給開發經理看,開發經理看了之後叫我看看,說人家用silverlight打印幾秒鐘就出來了。我也是覺得不可思議。於是在開發經理的要求下昨天上午抽了半天的時間去看看我們的表單打印有沒什麼能改進的地方。
我想既然別人用silverlight生成的報表打印這麼快,那我也用DataGrid做一個報表,看是不是打印這麼快,結果是很快。接着我又想,DataGrid打印這麼快,那其他的控件呢?於是我又用我們的表單工具做了一個簡單的只有文本的表單,測試打印,結果也很快。於是我又想,是不是我們表單的其它控件打印慢呢,拿審批表的四頁分別來測試,發現前3頁居然都很快,而最後一頁很慢,分析後認爲,最後一頁慢是因爲有了印章控件,而印章控件的特殊之處,就是控件裏面用了Image控件。於是乎聯想到,我們系統裏面表單打印慢,或許是因爲表項的Image控件。於是我繼續探索,發現了Image控件的一個很坑爹的特點,就是如果Image的Source爲空,打印速度就很慢,但是如果不爲空,就很快。那我想,我們系統的表單如果把Image控件的Source都設置一個默認的值,那打印速度應該就很快了。
和開發經理說了這個事情,下午我們按照我的猜想,把表單做了修改,結果可喜的事情出現了,打印真的快了很多很多,原來要一分鐘,現在只要幾秒鐘。我看到開發經理都咧着嘴笑了,哈哈。
終於解決了這個久久困擾着我們的問題,項目也可以驗收了。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章