1

好吧,我在使用视觉刷尝试从大画布的各个部分打印页面时运气不佳。一般工作,但往往会光栅化某些部分并产生不良输出。(我以前问过这个问题)。

所以现在我正在创建一堆内容相同的画布副本,并缩小到各个部分以打印为单个页面。这可行,但显然很慢,并且只会随着更多页面而变慢。

那么可能运作良好的是,是否有某种方法可以做类似于视觉画笔的事情,而是让它从其“视图”中复制内容作为某种新的几何对象?我的画布的内容是线条、图像等的组合,所以最好能够定义画笔的视图并告诉它将所有矢量和光栅对象的交集复制到一个新的某种容器。

这将允许我使用单个画布,并在不同位置拍摄内容的“快照”以用于打印各个页面。

4

1 回答 1

0

您可以使用 RenderTargetBitmap 获取 Canvas 的位图副本,然后裁剪您想要的部分。如果您特别想要矢量副本,则需要将画布写入 XPS。

编辑:如果您想要一个矢量副本,您是否尝试过使用 XamlWriter.Save、编辑 Xaml,然后是 XamlReader.Load?

于 2011-06-20T23:55:41.973 回答