Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
您知道 System.Drawing.Rectangle 是如何被 System.Windows.Int32Rect 取代的吗?(就非浮点形状而言......)
整数点或大小是否有类似的新对象?如果没有,我将只使用 System.Drawing - 但这似乎是两个平台的小混合,对我来说不应该混合。
无论如何,您对此有何看法?
正如您所指出的,WPF 中的绘图原语将所有测量值/位置值存储为双精度值 - 显然除了 Int32Rect 之外的所有值。这种设计背后的原因是由于 WPF 没有直接从像素到显示器绑定 - 它使用“设备独立像素”(DIP),可以针对正在渲染它的任何设备进行缩放。这使 WPF 能够非常轻松地缩放和翻译它显示的所有内容。
至于 System.Windows.Int32Rect,我看到它在 API 中使用的唯一地方是用于捕获和裁剪像素。这是有道理的——在进行屏幕截图时,您希望准确获取设备上当前显示的像素。