add:禁用硬件加速 & improve:UI

This commit is contained in:
2026-04-18 16:50:44 +08:00
parent b50049c822
commit 6659db651d
5 changed files with 39 additions and 60 deletions
+9
View File
@@ -803,6 +803,15 @@
FontSize="26" />
</GroupBox.Header>
<ikw:SimpleStackPanel Spacing="6">
<ikw:SimpleStackPanel Orientation="Horizontal" HorizontalAlignment="Left">
<TextBlock Foreground="#fafafa" Text="{i18n:I18n Key=Canvas_DisableHardwareAcceleration}" VerticalAlignment="Center"
FontSize="14" Margin="0,0,16,0" />
<ui:ToggleSwitch OnContent="" OffContent="" Name="ToggleSwitchDisableHardwareAcceleration"
IsOn="False" FontFamily="Microsoft YaHei UI" FontWeight="Bold"
Toggled="ToggleSwitchDisableHardwareAcceleration_Toggled" />
</ikw:SimpleStackPanel>
<TextBlock Text="{i18n:I18n Key=Canvas_DisableHardwareAccelerationHint}" TextWrapping="Wrap" Foreground="#a1a1aa" />
<ikw:SimpleStackPanel Orientation="Horizontal" HorizontalAlignment="Left">
<TextBlock Foreground="#fafafa" Text="{i18n:I18n Key=Canvas_ShowCursor}" VerticalAlignment="Center"
FontSize="14" Margin="0,0,16,0" />
+5 -44
View File
@@ -3331,55 +3331,16 @@ namespace Ink_Canvas
SaveSettingsToFile();
}
// 注释掉这些方法,因为对应的UI控件还没有在XAML中定义
/*
private void ToggleSwitchAsyncInkSmoothing_Toggled(object sender, RoutedEventArgs e) {
private void ToggleSwitchDisableHardwareAcceleration_Toggled(object sender, RoutedEventArgs e)
{
if (!isLoaded) return;
Settings.Canvas.UseAsyncInkSmoothing = ToggleSwitchAsyncInkSmoothing.IsOn;
Settings.Canvas.UseHardwareAcceleration = !ToggleSwitchDisableHardwareAcceleration.IsOn;
_inkSmoothingManager?.UpdateConfig();
SaveSettingsToFile();
}
private void ToggleSwitchHardwareAcceleration_Toggled(object sender, RoutedEventArgs e) {
if (!isLoaded) return;
Settings.Canvas.UseHardwareAcceleration = ToggleSwitchHardwareAcceleration.IsOn;
_inkSmoothingManager?.UpdateConfig();
SaveSettingsToFile();
}
private void ComboBoxInkSmoothingQuality_SelectionChanged(object sender, SelectionChangedEventArgs e) {
if (!isLoaded) return;
Settings.Canvas.InkSmoothingQuality = ComboBoxInkSmoothingQuality.SelectedIndex;
_inkSmoothingManager?.UpdateConfig();
SaveSettingsToFile();
}
private void SliderMaxConcurrentTasks_ValueChanged(object sender, RoutedPropertyChangedEventArgs<double> e) {
if (!isLoaded) return;
Settings.Canvas.MaxConcurrentSmoothingTasks = (int)SliderMaxConcurrentTasks.Value;
_inkSmoothingManager?.UpdateConfig();
SaveSettingsToFile();
}
private void ButtonApplyRecommendedSettings_Click(object sender, RoutedEventArgs e) {
// 应用推荐的性能设置
Helpers.InkSmoothingManager.ApplyRecommendedSettings();
LoadSettings(false);
_inkSmoothingManager?.UpdateConfig();
SaveSettingsToFile();
ShowNotification("已应用推荐的性能设置");
}
private void ButtonShowPerformanceStats_Click(object sender, RoutedEventArgs e) {
if (_inkSmoothingManager != null)
{
var stats = _inkSmoothingManager.GetPerformanceStats();
ShowNotification($"性能统计: {stats}");
}
}
*/
private void ToggleSwitchAutoSaveStrokesInPowerPoint_Toggled(object sender, RoutedEventArgs e)
{
if (!isLoaded) return;
+1 -16
View File
@@ -954,22 +954,7 @@ namespace Ink_Canvas
drawingAttributes.FitToCurve = false;
}
// 注释掉新的墨迹平滑性能设置,因为UI控件还没有定义
/*
// 初始化新的墨迹平滑性能设置
ToggleSwitchAsyncInkSmoothing.IsOn = Settings.Canvas.UseAsyncInkSmoothing;
ToggleSwitchHardwareAcceleration.IsOn = Settings.Canvas.UseHardwareAcceleration;
ComboBoxInkSmoothingQuality.SelectedIndex = Settings.Canvas.InkSmoothingQuality;
SliderMaxConcurrentTasks.Value = Settings.Canvas.MaxConcurrentSmoothingTasks > 0 ?
Settings.Canvas.MaxConcurrentSmoothingTasks : Environment.ProcessorCount;
// 检查硬件加速支持
if (!Helpers.InkSmoothingManager.IsHardwareAccelerationSupported())
{
ToggleSwitchHardwareAcceleration.IsEnabled = false;
// 可以添加提示文本说明硬件加速不可用
}
*/
ToggleSwitchDisableHardwareAcceleration.IsOn = !Settings.Canvas.UseHardwareAcceleration;
// 初始化直线自动拉直相关设置
ToggleSwitchAutoStraightenLine.IsOn = Settings.Canvas.AutoStraightenLine;
+12
View File
@@ -528,6 +528,12 @@
<data name="InkRecog_EnableInkRecognition" xml:space="preserve">
<value>Enable ink recognition</value>
</data>
<data name="InkRecog_HandwritingBeautify" xml:space="preserve">
<value>Handwriting correction</value>
</data>
<data name="InkRecog_HandwritingBeautifyHint" xml:space="preserve">
<value># When enabled, strokes will be corrected to look smoother and neater (WinRT-based).</value>
</data>
<data name="InkRecog_BlockRectFakePressure" xml:space="preserve">
<value>Block fake pressure on corrected rectangles</value>
</data>
@@ -957,6 +963,12 @@
<data name="Canvas_GroupTitle" xml:space="preserve">
<value>Canvas and ink</value>
</data>
<data name="Canvas_DisableHardwareAcceleration" xml:space="preserve">
<value>Disable hardware acceleration</value>
</data>
<data name="Canvas_DisableHardwareAccelerationHint" xml:space="preserve">
<value># Improves compatibility but may reduce performance; some effects may require an app restart to fully apply.</value>
</data>
<data name="Canvas_ShowCursor" xml:space="preserve">
<value>Show pen cursor</value>
</data>
+12
View File
@@ -549,6 +549,12 @@
<data name="InkRecog_ShapeEngineHint" xml:space="preserve">
<value> 自动:64 位进程使用 WinRTWindows 10+),32 位使用 IACore。可强制指定 IACore 或 WinRT。</value>
</data>
<data name="InkRecog_HandwritingBeautify" xml:space="preserve">
<value>手写体纠正</value>
</data>
<data name="InkRecog_HandwritingBeautifyHint" xml:space="preserve">
<value># 开启后,将对手写笔画进行更平滑、更工整的纠正处理(基于 WinRT)。</value>
</data>
<data name="InkRecog_ShapeEngineAuto" xml:space="preserve">
<value>自动</value>
</data>
@@ -999,6 +1005,12 @@
<data name="Canvas_GroupTitle" xml:space="preserve">
<value>画板和墨迹</value>
</data>
<data name="Canvas_DisableHardwareAcceleration" xml:space="preserve">
<value>关闭硬件加速</value>
</data>
<data name="Canvas_DisableHardwareAccelerationHint" xml:space="preserve">
<value># 关闭后可提升兼容性,但可能降低性能;部分效果可能需要重启程序后完全生效。</value>
</data>
<data name="Canvas_ShowCursor" xml:space="preserve">
<value>显示画笔光标</value>
</data>