一个在很多PDC文件中列出的Silverlight 4个的特征是打印预览。

我搜索了关于如何使用这样的例子并没有发现至今。有没有人有这方面的工作了吗?你能给我就如何落实在打印预览简单的Web应用中的一些指针。

有帮助吗?

解决方案 3

我觉得从缺乏回应和事实,即作为Hurricanepkt在答复添雅指出,和其他人谈论它,如果displying在屏幕上一样的东西可以很容易地内置到自己定制的打印预览虚拟打印功能在某些列表中列出的打印预览实际上是人们misinterpretting什么虚拟打印文件实际上是。

其他提示

我还没有看到打印预览它们任何一种,但实际的打印支持,可以在其中控制哪些控制被打印以及基于所述打印处理的事件。

找过了一会儿,我发现了一种通过将一些功能我在其他项目中发现,要做到这一点,但他们用它的图像处理。我试着用印刷,似乎很好地工作。

这是如何工作的: 通过使用WriteableBitmap的获取转换为位图打印内容的容器基,这里I'll使用画布:

WriteableBitmap wb = new WriteableBitmap(this.canvas1, null);

使用此位图作为用于图像控制源(可以是内部的ScrollViewer,什么是更好)。

this.imagePreview.Height = wb.PixelHeight;
this.imagePreview.Width = wb.PixelWidth;
this.imagePreview.Source = wb;

设置缩放基本单元(用于在这种情况下的1%):

Point scale = new Point();      

scale.X = imagePreview.Width/100d;
scale.Y = imagePreview.Height/100d;

然后调整使用滑块缩放(可选)

private void vSlider_ValueChanged(object sender, RoutedPropertyChangedEventArgs<double> e)
        {

                imagePreview.Height = scale.Y * vSlider.Value;
                imagePreview.Width = scale.X * vSlider.Value;           
        }
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top