0

我有一个程序可以生成一个 FixedDocument 对象并将其显示在 XPS DocumentViewer 中。根据 MSDN 上的文档,“固定文档适用于需要精确的“所见即所得”(WYSIWYG) 演示的应用程序,与所使用的显示器或打印机硬件无关。”

然而,这正是我想要的..

当我在 Windows XP 和 Windows 7 的 XPS DocumentViewers 中打开同一个文档时,文档的呈现方式存在很大差异。Windows 7 版本似乎使用了更大的字体和更大的元素间距。什么会导致这种情况?FixedDocument 的目的难道不是不管操作系统、打印机或其他任何东西,它看起来总是一样吗?

我已经对该主题进行了一些谷歌搜索,但找不到任何相关内容,并感谢您提供的任何建议。

谢谢!

4

1 回答 1

0

你没有问一个具体的问题,但我会提供我对这个主题的了解。

windows XP 文档查看器和 windows 7 文档查看器使用的渲染器有很大的不同。我相信,但不能证实,XP 版本是外包给另一家公司的,而 Windows 7 版本是在内部完成的。在存在差异的地方,Windows 7 渲染器通常相对于 XPS 规范更准确。如果您将该 FixedDocument 直接发送到支持 xps 的打印机,您还将获得与您在任一查看器中看到的结果有所不同的结果,因为在打印机上调用了另一个渲染器。

这是依赖于客户端执行呈现的任何文档格式的限制。HTML 也有类似的问题——每个浏览器呈现 html 的方式都有些不同,因此虽然结果可能看起来很相似,但它们永远不会完全相同。

你能为这个做什么?不多。不同 XPS 渲染器之间的差异应该足够小,以至于在大多数情况下它们都不是问题。如果您确实需要跨平台的像素完美精度,则需要转向光栅化格式。

于 2012-02-01T22:20:29.373 回答