什么是PixelOffsetMode?

isp*_*iro 7 .net c# image

MSDN 没有为那些不知道它是什么的人解释它.我搜索过,但只发现它设置了渲染的质量.但是以什么方式?例如,做什么

指定像素在水平和垂直方向上偏移-.5个单位,以进行高速抗锯齿处理.(MSDN)

意思?

Iły*_*sov 6

在绘画期间,您使用双值来呈现逻辑图形对象,例如线条,圆圈等.

但在渲染过程中,框架应将逻辑双精度转换为物理整数像素.

在此过程中,框架使用某种舍入,平滑(抗锯齿)

因此,在抗锯齿期间,您可以使用不同的算法来提供不同的结果; 通常他们需要计算逻辑像素与其物理坐标之间的"距离",因此该设置的不同模式会影响该距离的精度.

这是不同模式的很好的例子(基本上不同的灰色阴影 - 不同的距离):

在此输入图像描述

注意:.net框架也有实际平滑设置(SmoothingMode),这基本上意味着 - 我们如何平滑,而不是我们如何在内部计算距离