我正在尝试使用DrawingContext.DrawGeometry
一个边长为 1 个设备像素宽的矩形。
var geometry = (defined elsewhere from a Rect {0.0, 0.0, 8.0, 18.0})
var brush = new SolidColorBrush(Color.FromArgb(30, 0xff, 0xff, 0xff));
// Note: the pen is declared with a 1.0 thickness
var pen = new Pen(new SolidColorBrush(Color.FromArgb(0xFF, 0xFF, 0xFF, 0xFF)), 1.0)
drawingContext.DrawGeometry(brush, pen, geometry);
我已经验证Rect
我正在构建几何图形是整数,而不是小数点(手动验证),并且Pen
我正在绘制几何图形是1.0
单位宽。
问题是矩形是在 2 个设备像素宽的屏幕上绘制的。如何在精确的设备像素上绘制这个矩形?我预计在 96dpi 时,这将达到 1 个像素。