From 31ee6d4894ec08a6894298be9120047243702de6 Mon Sep 17 00:00:00 2001 From: callmeyan Date: Wed, 5 Mar 2025 19:48:42 +0800 Subject: [PATCH] =?UTF-8?q?fixed:=20=E5=8B=98=E8=AF=AF=E8=A1=A8=E5=8E=9F?= =?UTF-8?q?=E6=96=87=E8=BF=87=E9=95=BF=E5=AF=BC=E8=87=B4=E6=88=AA=E5=8F=96?= =?UTF-8?q?=E5=BC=82=E5=B8=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- AIProofread/Model/ExportDataItem.cs | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/AIProofread/Model/ExportDataItem.cs b/AIProofread/Model/ExportDataItem.cs index df3e259..fd74d96 100644 --- a/AIProofread/Model/ExportDataItem.cs +++ b/AIProofread/Model/ExportDataItem.cs @@ -1,5 +1,6 @@ using Microsoft.Office.Interop.Word; using System.Collections.Generic; +using System.Diagnostics; using System.Text; using UtilLib; @@ -30,6 +31,22 @@ namespace AIProofread.Model { return sentence; } + // 截取中间位置 + var middlePosition = MAX_WORD_LENGTH / 2; + var cutStart = item.content.Start - middlePosition; + // 越界了 + if(cutStart < 0) + { + cutStart = 0; + } + var originText = sentence.Substring(cutStart, MAX_WORD_LENGTH); + Debug.WriteLine($"{cutStart} {originText}"); + if (!isInsert) + { + item.content.Start = item.content.Start - cutStart; + item.content.End = item.content.End - cutStart; + return originText; + } var range = item.mark.Range; // 获取range所在句子 @@ -50,6 +67,7 @@ namespace AIProofread.Model } } var first = sentences.First; + // 内容位置:用于后续标红 item.content.Start = range.Start - first.Start; item.content.End = range.End - first.Start; return sb.ToString().Trim();