1

您知道 System.Drawing.Rectangle 是如何被 System.Windows.Int32Rect 取代的吗?(就非浮点形状而言......)

整数点或大小是否有类似的新对象?如果没有,我将只使用 System.Drawing - 但这似乎是两个平台的小混合,对我来说不应该混合。

无论如何,您对此有何看法?

4

1 回答 1

2

正如您所指出的,WPF 中的绘图原语将所有测量值/位置值存储为双精度值 - 显然除了 Int32Rect 之外的所有值。这种设计背后的原因是由于 WPF 没有直接从像素到显示器绑定 - 它使用“设备独立像素”(DIP),可以针对正在渲染它的任何设备进行缩放。这使 WPF 能够非常轻松地缩放和翻译它显示的所有内容。

至于 System.Windows.Int32Rect,我看到它在 API 中使用的唯一地方是用于捕获和裁剪像素。这是有道理的——在进行屏幕截图时,您希望准确获取设备上当前显示的像素。

于 2009-07-31T02:43:56.420 回答