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

fix: markdown渲染优化

parent 228a716c
......@@ -124,7 +124,8 @@ namespace Tools.MyCommon
{
sb.Append(@"\cf"); sb.Append(ClThinking);
sb.Append(@"\i\fs18 ");
sb.Append("▸ Thinking...");
sb.Append(EscapeChar('▸'));
sb.Append(" Thinking...");
sb.Append(@"\par ");
sb.Append(Escape(msg.ThinkingContent));
sb.Append(@"\i0\fs20\cf"); sb.Append(ClText);
......@@ -203,7 +204,8 @@ namespace Tools.MyCommon
int li = 360 + indent * 120;
sb.Append(@"\li"); sb.Append(li);
sb.Append(@"\fi-180 ");
sb.Append("• ");
sb.Append(EscapeChar('•'));
sb.Append(" ");
RenderInline(sb, trimmed.Substring(2));
sb.Append(@"\pard\par ");
}
......@@ -300,15 +302,7 @@ namespace Tools.MyCommon
if (string.IsNullOrEmpty(text)) return "";
var sb = new StringBuilder(text.Length);
foreach (char c in text)
{
switch (c)
{
case '\\': sb.Append("\\\\"); break;
case '{': sb.Append("\\{"); break;
case '}': sb.Append("\\}"); break;
default: sb.Append(c); break;
}
}
sb.Append(EscapeChar(c));
return sb.ToString();
}
......@@ -441,7 +435,13 @@ namespace Tools.MyCommon
case '}': return "\\}";
case '\r': return "";
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