问题描述
在WPF应用程序中,我使用InkCanvas进行绘图,并且在使用笔时出现“偏移笔划”问题。
如果我在系统设置中将DPI,“缩放和布局”设置为100%以上,例如对于2160p分辨率设置为150%,则InkCanvas中的笔画将向右和向下移动。
在图像1中,您可以看到我实际上用PEN画了线(红线),以及InkCanvas如何移动它(蓝线)。 但是,仅在使用Pen或Touch时会发生此问题。如果我用鼠标绘图就可以了。
我使用InkCanvas的默认设置。
Xaml:
<InkCanvas x:Name="inkCanvas"
Height="250" Width="350"
Opacity="1"
Background="LightGray" />
隐藏代码:
inkCanvas.DefaultDrawingAttributes.Color = Colors.Blue;
inkCanvas.DefaultDrawingAttributes.FitToCurve = true;
inkCanvas.DefaultDrawingAttributes.IgnorePressure = false;
inkCanvas.DefaultDrawingAttributes.Width = 4;
inkCanvas.DefaultDrawingAttributes.Height = 4;
我也尝试在app.config中打开EnablePointerSupport支持,但是它不起作用。笔触不再可见。
App.config:
<runtime>
<AppContextSwitchOverrides value="Switch.System.Windows.Input.Stylus.EnablePointerSupport=true"/>
如何为WPF应用程序将DPI支持设置为大于100%?有趣的是,在UWP,一切正常。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)