Commit 63b72095 authored by 段廷瑞's avatar 段廷瑞

fix: markdown渲染优化

parent 228a716c
...@@ -124,7 +124,8 @@ namespace Tools.MyCommon ...@@ -124,7 +124,8 @@ namespace Tools.MyCommon
{ {
sb.Append(@"\cf"); sb.Append(ClThinking); sb.Append(@"\cf"); sb.Append(ClThinking);
sb.Append(@"\i\fs18 "); sb.Append(@"\i\fs18 ");
sb.Append("▸ Thinking..."); sb.Append(EscapeChar('▸'));
sb.Append(" Thinking...");
sb.Append(@"\par "); sb.Append(@"\par ");
sb.Append(Escape(msg.ThinkingContent)); sb.Append(Escape(msg.ThinkingContent));
sb.Append(@"\i0\fs20\cf"); sb.Append(ClText); sb.Append(@"\i0\fs20\cf"); sb.Append(ClText);
...@@ -203,7 +204,8 @@ namespace Tools.MyCommon ...@@ -203,7 +204,8 @@ namespace Tools.MyCommon
int li = 360 + indent * 120; int li = 360 + indent * 120;
sb.Append(@"\li"); sb.Append(li); sb.Append(@"\li"); sb.Append(li);
sb.Append(@"\fi-180 "); sb.Append(@"\fi-180 ");
sb.Append("• "); sb.Append(EscapeChar('•'));
sb.Append(" ");
RenderInline(sb, trimmed.Substring(2)); RenderInline(sb, trimmed.Substring(2));
sb.Append(@"\pard\par "); sb.Append(@"\pard\par ");
} }
...@@ -300,15 +302,7 @@ namespace Tools.MyCommon ...@@ -300,15 +302,7 @@ namespace Tools.MyCommon
if (string.IsNullOrEmpty(text)) return ""; if (string.IsNullOrEmpty(text)) return "";
var sb = new StringBuilder(text.Length); var sb = new StringBuilder(text.Length);
foreach (char c in text) foreach (char c in text)
{ sb.Append(EscapeChar(c));
switch (c)
{
case '\\': sb.Append("\\\\"); break;
case '{': sb.Append("\\{"); break;
case '}': sb.Append("\\}"); break;
default: sb.Append(c); break;
}
}
return sb.ToString(); return sb.ToString();
} }
...@@ -441,7 +435,13 @@ namespace Tools.MyCommon ...@@ -441,7 +435,13 @@ namespace Tools.MyCommon
case '}': return "\\}"; case '}': return "\\}";
case '\r': return ""; case '\r': return "";
case '\n': return @"\line "; case '\n': return @"\line ";
default: return c.ToString(); case '\t': return @"\tab ";
default:
// 非 ASCII:\uN 转义(头部已声明 \uc1,后跟 1 个回退字符),
// 避免字符不在系统 ANSI 代码页中而被 RichTextBox 渲染为 '?'
if (c >= 128)
return $@"\u{unchecked((short)c)}?";
return c.ToString();
} }
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment