c# - WPF InkCanvas : how to disable antialiasing

标签 c# wpf inkcanvas

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

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

现在我正在检查从图像中获取的数组,并删除与 Color.Red 不完全匹配的所有像素(即 ARGB:255,255,0,0)...我确定有一种更聪明的方法可以做到这一点!

提前致谢。

最佳答案

好的。我找到了答案!

来源:

  1. https://social.msdn.microsoft.com/Forums/vstudio/en-US/d95c6b91-2a68-455b-b9d4-021bd5c96029/how-to-disable-smoothing-for-stroke-?forum=wpf
  2. Rendering sharp lines in WPF

我只是尝试添加 renderoptions.edgemode =“Aliased” 将直接添加到XAML中(在选择InkCanvas时,属性未显示在属性窗口中),并且可以正常工作。 基本上是这样的:

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

收件人:

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

在 MouseUp 上,笔划静止“移动”了一点,但笔划本身非常清晰!

关于c# - WPF InkCanvas : how to disable antialiasing,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32299481/

相关文章:

c# - 如何调用具有 bool 值 true unity C# 的数组元素

c# - xna 3d bullet bath 和 draw 方法出了问题

c# - 在 WPF 中创建 UI 设置的正确方法是什么?

c# - WPF - 防止用户操作在应用程序繁忙时排队

c# - 移动 UWP InkStrokes 以进行离屏渲染

wpf - 如何在 View 模型中接收 InkCanvas.StrokeCollected 事件

c# - List<List<string>> 值到 string[][] 数组 C#

c# - 如何在字符串上添加 `.Take()` 并在末尾获取字符串?

c# - wpf、c#、viewport3D 的 renderTargetBitmap 没有将其分配给窗口

c# - InkCanvas 加载/保存操作