该目录用于沉淀 AI 智能体在本项目每次协作后的知识总结。
Knowledge/
├── README.md # 本文件——索引与使用说明
├── 开发约定与模式.md # 提炼:项目编码约定、测试模式、跨平台策略
├── 领域与技术参考.md # 提炼:布局管线、高亮架构、UTF-16、多语言等
├── 任务日志/ # 按日期组织的任务总结(YYYY-MM-DD-任务简述.md)
├── 通用参考/ # 偏通用技术、.NET 平台知识,不绑定具体任务
└── _archive/ # 已过时但保留备查
阅读顺序:先 开发约定与模式.md 了解"怎么写",再 领域与技术参考.md 了解"是什么"。
| 文件 | 说明 |
|---|---|
| 开发约定与模式.md | API 设计模式(三重重载、功能开关)、跨平台策略、测试模式、验证流程、命名规范 |
| 领域与技术参考.md | 布局管线、指导布局、竖排、装饰集合、字体回退、高亮架构、UTF-16、多语言、NativeAOT 限制 |
| 文件 | 主题 |
|---|---|
| 2026-07-08-README面向使用方重构.md | 文档/NuGet |
| 2026-07-07-NuGet包名添加DotNetCampus前缀.md | 工程/NuGet |
| 2026-07-03-空段拖拽选择修复.md | 编辑 |
| 文件 | 主题 |
|---|---|
| 2026-06-08-UI框架层添加CreateDocumentOffsetFromUtf16Index.md | API/文档 |
| 文件 | 主题 |
|---|---|
| 2026-02-28-NativeAot-RunProperty导出与PInvoke补充.md | NativeAOT |
| 文件 | 主题 |
|---|---|
| 2025-05-29-Skia渲染Y坐标定位与修复.md | Skia 渲染 |
| 文件 | 说明 |
|---|---|
| .NET类库多语言与卫星程序集异常资源机制.md | .NET 多语言最佳实践、resx + 卫星程序集方案、本项目落地建议 |
| Skia文本渲染调试方法论.md | 五层分层诊断策略:字体度量→字符测量→行布局→绘制→选择范围 |
| NativeAOT-PInvoke实践要点.md | UnmanagedCallersOnly 限制、两段式字符串读取、跨边界类型设计 |
| CharData坐标与尺寸语义手册.md | FrameSize vs FaceSize、GetStartPoint 方向语义、行范围层次、竖排宽高交换 |
| 视觉回归测试差异图方案.md | Skia 2x2 四宫格差异图生成方案,适用于 UI 视觉回归测试 |
| UTF16索引与文档偏移转换体验优化分析.md | UTF-16 索引与文档偏移转换的三层 API 设计、TextIndexConverter 使用指南 |
| 文件 | 归档原因 |
|---|---|
| 2025-01-XX-MarkdownDocumentHighlighter单元测试.md | 日期模糊,高亮实现已多轮重构,内容大部分过时 |
- 在
任务日志/下新建文件,命名:YYYY-MM-DD-任务简述.md - 内容至少包含:背景与目标、关键文件、主要决策、修改摘要、验证方式、后续建议
- 若是纯通用技术知识(不绑定具体任务),放入
通用参考/ - 更新本 README 索引表
- 当某个主题的
任务日志/累计较多时,将共性规律提炼到顶层提炼文档 - 提炼文档保持精炼,详细过程指向
任务日志/中的原始文件
- 如果任务日志中描述的实现已被完全替换或删除,移入
_archive/ - 归档时不删除文件,便于追溯历史
# <任务标题>
## 背景与目标
## 关键文件
- `路径A`
- `路径B`
## 主要决策
## 修改摘要
## 验证记录
## 风险与后续建议