From 03e0ffdce82f60782e3ecd92488e9f17139b34f8 Mon Sep 17 00:00:00 2001 From: callmeyan Date: Wed, 5 Mar 2025 15:36:24 +0800 Subject: [PATCH] =?UTF-8?q?feat:=E5=AE=A2=E6=9C=8D=E8=B0=83=E6=95=B4?= =?UTF-8?q?=EF=BC=9B=E4=BC=98=E5=8C=96=E5=A4=A7=E6=96=87=E6=A1=A3=E5=8F=8A?= =?UTF-8?q?=E6=A0=BC=E5=BC=8F=E5=A4=8D=E6=9D=82=E6=96=87=E6=A1=A3=E5=8D=A1?= =?UTF-8?q?=E7=89=87=E8=B7=B3=E8=BD=AC=E5=8D=A1=E9=A1=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- AIProofread/AIProofread.csproj | 6 ++++ AIProofread/Config.cs | 5 +-- AIProofread/Controls/FormContact.Designer.cs | 4 +-- AIProofread/Model/DocumentInfo.cs | 10 ++++-- AIProofread/Properties/Resources.Designer.cs | 20 ++++++++++++ AIProofread/Properties/Resources.resx | 32 +++++++++++-------- AIProofread/Resources/icon-manual-wps.jpg | Bin 0 -> 14576 bytes AIProofread/Resources/icon-manual.png | Bin 0 -> 9124 bytes AIProofread/Ribbon1.Designer.cs | 12 +++++++ AIProofread/Ribbon1.cs | 12 +++++++ 10 files changed, 81 insertions(+), 20 deletions(-) create mode 100644 AIProofread/Resources/icon-manual-wps.jpg create mode 100644 AIProofread/Resources/icon-manual.png diff --git a/AIProofread/AIProofread.csproj b/AIProofread/AIProofread.csproj index 8cf0eee..46ddc81 100644 --- a/AIProofread/AIProofread.csproj +++ b/AIProofread/AIProofread.csproj @@ -552,6 +552,12 @@ + + + + + + 10.0 $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) diff --git a/AIProofread/Config.cs b/AIProofread/Config.cs index 4b4cbf4..6013db3 100644 --- a/AIProofread/Config.cs +++ b/AIProofread/Config.cs @@ -12,11 +12,12 @@ namespace AIProofread public class Config { public static readonly string APP_NAME = "AI校对王"; - public static readonly string APP_VERSION = "2.1.2"; + public static readonly string APP_VERSION = "2.2.0"; public static bool IS_WPS = false; public static bool UpgradeForcedNotice = false; public static readonly string APP_BASE_DIR = AppDomain.CurrentDomain.BaseDirectory; public static readonly string CONFIG_FILE = AppDomain.CurrentDomain.BaseDirectory + "app.json"; + public static readonly string USER_MANUAL_URL = "https://doc.weixin.qq.com/doc/w3_AMYAMAaTAKQFkUi5WkYT1OPSXFD17?scode=ACQARAe_AAsF7LbNrM"; /// /// 文本背景色 /// @@ -30,7 +31,7 @@ namespace AIProofread public static bool RUN_IN_DEBUG = true; public static AppEnvironment APP_ENV = AppEnvironment.Dev; #else - public static string WEB_PATH = "https://gm-plugin.gachafun.com/"; // gm-plugin.gachafun.com pre-gm-plugin.gachafun.com + public static string WEB_PATH = "http://gm2-plugin.zverse.group/"; // gm-plugin.gachafun.com pre-gm-plugin.gachafun.com public static bool RUN_IN_DEBUG = false; public static AppEnvironment APP_ENV = AppEnvironment.Prod; #endif diff --git a/AIProofread/Controls/FormContact.Designer.cs b/AIProofread/Controls/FormContact.Designer.cs index f3690df..8a52482 100644 --- a/AIProofread/Controls/FormContact.Designer.cs +++ b/AIProofread/Controls/FormContact.Designer.cs @@ -40,7 +40,7 @@ this.WebViewContact.Dock = System.Windows.Forms.DockStyle.Fill; this.WebViewContact.Location = new System.Drawing.Point(0, 0); this.WebViewContact.Name = "WebViewContact"; - this.WebViewContact.Size = new System.Drawing.Size(380, 216); + this.WebViewContact.Size = new System.Drawing.Size(540, 420); this.WebViewContact.TabIndex = 0; this.WebViewContact.ZoomFactor = 1D; // @@ -48,7 +48,7 @@ // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.ClientSize = new System.Drawing.Size(380, 216); + this.ClientSize = new System.Drawing.Size(540, 420); this.Controls.Add(this.WebViewContact); this.Name = "FormContact"; this.ShowIcon = false; diff --git a/AIProofread/Model/DocumentInfo.cs b/AIProofread/Model/DocumentInfo.cs index 663e1c6..618cfcf 100644 --- a/AIProofread/Model/DocumentInfo.cs +++ b/AIProofread/Model/DocumentInfo.cs @@ -604,9 +604,13 @@ namespace AIProofread.Model //object goNext = WdGoToDirection.wdGoToNext; //Globals.ThisAddIn.Application.ActiveWindow.Selection.GoTo(ref goToLine, ref goNext, ref lineNum); // - object bookmark = WdGoToItem.wdGoToBookmark; - object bookmarkName = mark.Name; - Globals.ThisAddIn.Application.ActiveWindow.Selection.GoTo(ref bookmark, ref missing, ref missing, ref bookmarkName); + //object bookmark = WdGoToItem.wdGoToBookmark; + //object bookmarkName = mark.Name; + var targetRange = mark.Range; + // 选中 + targetRange.Select(); + Globals.ThisAddIn.Application.ActiveWindow.ScrollIntoView(targetRange);//.Selection.GoTo(ref bookmark, ref missing, ref missing, ref bookmarkName); + // //mark.DisableCharacterSpaceGrid = false; // 先滚动到可视区域 diff --git a/AIProofread/Properties/Resources.Designer.cs b/AIProofread/Properties/Resources.Designer.cs index de65c5c..aad8863 100644 --- a/AIProofread/Properties/Resources.Designer.cs +++ b/AIProofread/Properties/Resources.Designer.cs @@ -230,6 +230,26 @@ namespace AIProofread.Properties { } } + /// + /// 查找 System.Drawing.Bitmap 类型的本地化资源。 + /// + internal static System.Drawing.Bitmap icon_manual { + get { + object obj = ResourceManager.GetObject("icon-manual", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// 查找 System.Drawing.Bitmap 类型的本地化资源。 + /// + internal static System.Drawing.Bitmap icon_manual_wps { + get { + object obj = ResourceManager.GetObject("icon-manual-wps", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + /// /// 查找 System.Drawing.Bitmap 类型的本地化资源。 /// diff --git a/AIProofread/Properties/Resources.resx b/AIProofread/Properties/Resources.resx index 9742ea7..b8833c2 100644 --- a/AIProofread/Properties/Resources.resx +++ b/AIProofread/Properties/Resources.resx @@ -136,6 +136,9 @@ ..\Resources\icon-history.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\icon-proofread.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + ..\Resources\icon-phone.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a @@ -178,11 +181,14 @@ ..\Resources\favicon.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\icon-ai-robot-wps.jpg;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + ..\Resources\icon-refresh-wps.jpg;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\icon-clear.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\icon-export.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a ..\Resources\button_default.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a @@ -196,11 +202,14 @@ ..\Resources\logo_no_text.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\icon-ai-robot.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + ..\Resources\logo_wps.jpg;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\icon-export.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\icon-clear.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a ..\Resources\icon-phone-wps.jpg;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a @@ -208,9 +217,6 @@ ..\Resources\icon-history-wps.jpg;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\icon-panel.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - ..\Resources\logo_no_text_wps.jpg;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a @@ -220,13 +226,13 @@ ..\Resources\icon_close.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\icon-proofread.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\icon-panel.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\icon-ai-robot.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\icon-manual.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\icon-ai-robot-wps.jpg;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\icon-manual-wps.jpg;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a \ No newline at end of file diff --git a/AIProofread/Resources/icon-manual-wps.jpg b/AIProofread/Resources/icon-manual-wps.jpg new file mode 100644 index 0000000000000000000000000000000000000000..63df64d99c7a3c6b2efc3a34866bee6a851f4b9e GIT binary patch literal 14576 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 Sp8EH{8FdwH<%Y-5u>S%#I?=5F literal 0 HcmV?d00001 diff --git a/AIProofread/Ribbon1.Designer.cs b/AIProofread/Ribbon1.Designer.cs index 2a0dc16..208f441 100644 --- a/AIProofread/Ribbon1.Designer.cs +++ b/AIProofread/Ribbon1.Designer.cs @@ -62,6 +62,7 @@ namespace AIProofread this.LblNickname = this.Factory.CreateRibbonLabel(); this.group2 = this.Factory.CreateRibbonGroup(); this.BtnShowPanel = this.Factory.CreateRibbonButton(); + this.BtnShowManual = this.Factory.CreateRibbonButton(); this.grpDebug = this.Factory.CreateRibbonGroup(); this.btnShowPane = this.Factory.CreateRibbonButton(); this.btnHidePane = this.Factory.CreateRibbonButton(); @@ -265,6 +266,7 @@ namespace AIProofread // group2 // this.group2.Items.Add(this.BtnShowPanel); + this.group2.Items.Add(this.BtnShowManual); this.group2.Name = "group2"; // // BtnShowPanel @@ -276,6 +278,15 @@ namespace AIProofread this.BtnShowPanel.ShowImage = true; this.BtnShowPanel.Click += new Microsoft.Office.Tools.Ribbon.RibbonControlEventHandler(this.BtnShowPanel_Click); // + // BtnShowManual + // + this.BtnShowManual.ControlSize = Microsoft.Office.Core.RibbonControlSize.RibbonControlSizeLarge; + this.BtnShowManual.Image = global::AIProofread.Properties.Resources.icon_manual; + this.BtnShowManual.Label = "用户手册\r\n"; + this.BtnShowManual.Name = "BtnShowManual"; + this.BtnShowManual.ShowImage = true; + this.BtnShowManual.Click += new Microsoft.Office.Tools.Ribbon.RibbonControlEventHandler(this.BtnShowManual_Click); + // // grpDebug // this.grpDebug.Items.Add(this.btnShowPane); @@ -407,6 +418,7 @@ namespace AIProofread internal Microsoft.Office.Tools.Ribbon.RibbonButton btnDetectionAll; internal Microsoft.Office.Tools.Ribbon.RibbonButton btnDetectionParagraph; internal Microsoft.Office.Tools.Ribbon.RibbonButton btnDetectionHistory; + internal Microsoft.Office.Tools.Ribbon.RibbonButton BtnShowManual; } partial class ThisRibbonCollection diff --git a/AIProofread/Ribbon1.cs b/AIProofread/Ribbon1.cs index fdb449a..33252e8 100644 --- a/AIProofread/Ribbon1.cs +++ b/AIProofread/Ribbon1.cs @@ -11,6 +11,7 @@ using System.Text; using AIProofread.core; using System.Windows.Forms; using AIProofread.Properties; +using System.Security.Policy; namespace AIProofread { @@ -95,6 +96,7 @@ namespace AIProofread BtnShowPanel.Image = AIProofread.Properties.Resources.icon_panel_wps; // 导出校对结果 BtnExportProofreadResult.Image = AIProofread.Properties.Resources.icon_export_wps; + BtnShowManual.Image = AIProofread.Properties.Resources.icon_manual_wps; } public void ProcessLoginInfo(Userinfo userinfo) @@ -612,5 +614,15 @@ namespace AIProofread btnDetectionAll.Enabled = allStatus; btnDetectionParagraph.Enabled = rangeStatus; } + + private void BtnShowManual_Click(object sender, RibbonControlEventArgs e) + { + try + { + Process.Start(Config.USER_MANUAL_URL); + }catch (Exception) { + Globals.ThisAddIn.ActiveDocument.ShowMessage("打开用户手册失败", 2000, false); + } + } } }