当前位置: 首页 > 知识库问答 >
问题:

WPF InkCanvas:如何禁用抗锯齿

仲孙英才
2023-03-14

我在我的项目中使用了InkCanvas,我注意到每当我画东西时,笔划都非常尖锐,一旦我松开鼠标按钮,它就会变得模糊。

有没有什么方法可以使笔划与绘制时的样子保持一致?

现在,我正在检查从图像中获得的阵列,并删除任何与颜色不完全匹配的像素。红色(即ARGB:255255,0,0)。。。我相信有一种更聪明的方法可以做到这一点!

提前谢谢。

共有1个答案

翟柏
2023-03-14

好吧。我找到答案了!

资料来源:

  1. https://social.msdn.microsoft.com/Forums/vstudio/en-US/d95c6b91-2a68-455b-b9d4-021bd5c96029/how-to-disable-smoothing-for-stroke-?forum=wpf
  2. 在WPF中渲染锐线

我只是尝试添加RenderOptions。EdgeMode="Aliated"直接进入XAML(选择InkCanvas时,该属性不会显示在Properties窗口中)并且它可以工作。基本上是这样的:

<InkCanvas x:Name="myInkCanvas" MoveEnabled="False" ...>

到:

<InkCanvas x:Name="myInkCanvas" MoveEnabled="False" RenderOptions.EdgeMode = "Aliased" ...>

在MouseUp上,笔画静止“移动”了一点,但笔画本身非常锋利!

 类似资料:
  • 目前我正在使用JavaFX开发一个2D游戏,游戏是像素艺术。不幸的是,像素艺术是模糊的,这是由抗锯齿引起的。 有没有办法在JavaFX画布上禁用抗锯齿?我试过用SceneAntialiasing。残废了,没用。我找不到其他方法来关闭它。

  • 在学习渲染的旅途中,你可能会时不时遇到模型边缘有锯齿的情况。这些锯齿边缘(Jagged Edges)的产生和光栅器将顶点数据转化为片段的方式有关。在下面的例子中,你可以看到,我们只是绘制了一个简单的立方体,你就能注意到它存在锯齿边缘了: 可能不是非常明显,但如果你离近仔细观察立方体的边缘,你就应该能够看到锯齿状的图案。如果放大的话,你会看到下面的图案: 这很明显不是我们想要在最终程序中所实现的效果

  • 问题内容: 在swing应用程序中,我使用来自定义文本。这是一个示例: 在同一应用中,一个 文本http://img525.imageshack.us/img525/4928/drawstringsample.jpg ,我正在使用渲染文本。这是一个示例: 替代文本http://img28.imageshack.us/img28/1134/jtextpanesample.jpg 您能注意到较低的样本

  • 问题内容: 我们如何在CSS中应用类似于Photoshop的字体抗锯齿功能,例如清晰,锐利,强壮,平滑? 所有浏览器都支持这些吗? 问题答案: 主席先生,你在这里:-) 1个 2

  • 问题内容: 尽管Swing可以提供字体,但许多Java应用程序默认情况下都不使用抗锯齿字体。如何强制一个任意的Java应用程序使用AA字体?(对于我正在运行的应用程序和我正在开发的应用程序) 问题答案: 如果您有权访问源,则可以在main方法中执行此操作: 或者,(并且,如果您无权访问源代码,或者如果这样做更容易),则可以通过将以下选项添加到命令行中,将上述系统属性简单地传递到jvm中:

  • 问题内容: 对于PIL中的线条和椭圆,图像是粗糙的。 我发现仅在调整大小和缩略图中使用了抗锯齿功能。 绘制直线或椭圆形时,有什么方法可以进行抗锯齿吗? 问题答案: 本地执行此操作的唯一方法是使用超级采样。以所需大小的倍数渲染图像,然后使用进行渲染。