Silverlight图形与动画技术解析
1. 文本打印问题
在处理文本打印时,如果将 TextBlock.TextWrapping 属性设置为 Wrap ,并且给予足够大的尺寸来容纳多行文本, TextBlock 会自动对打印文本进行换行。然而,当需要在多页上进行文本换行时,情况就变得复杂了,因为无法确切知道 TextBlock 在每一页上何时会用尽空间。唯一的办法是逐字打印文档,以此确定每页能容纳的确切文本量,但这种方法既缓慢又繁琐,凸显了Silverlight简化打印模型的局限性。
2. 位图和矢量打印
Silverlight有两种不同的打印管道:
- 位图打印 :这是最初在Silverlight 4中引入的打印系统。在位图模式下,Silverlight使用 WriteableBitmap 类将每一页转换为图片。位图打印的优点是能处理任何内容,并且适用于任何打印机;缺点是需要向打印机传输大量数据,速度较慢。
- 矢量打印 :这是Silverlight 5引入的替代打印系统。在矢量模式下,Silverlight发送更高级的打印指令,指示打印机渲染特定的形状、纹理和文本,性能优于位图模式。但存在两个显著的限制:一是打印机和打印机驱动程序必须支持PostScript;二是某些位图效果无法转换为PostScript打印,如部分透明内容层、透视变换和3D场景。
Silverlight采用了一种回退系统,尽可能使用矢量打
超级会员免费看
订阅专栏 解锁全文
11

被折叠的 条评论
为什么被折叠?



