fanlusky
7bbb9042fc
perf(ui): 缓存卡片阴影、TextBlock 字体格式和候选列表文字度量
- Card:每帧为每道阴影新建离屏位图、画刷和高斯模糊特效。改为把全部阴影
合成到一张位图,按尺寸、圆角、DPI、阴影参数和 render target 复用;
尺寸不变的重绘(选中项移动、译文与云候选补齐)直接贴图。合成失败时仍
走原来的逐帧绘制。
- TextBlock:每次测量都新建 IDWriteTextFormat,自定义回退字体还要把系统
回退表整份复制进新 builder。格式与文字、光标无关,改为只在字体、字号、
对齐或回退字体变化时重建。
- CandidateList:一帧里会测量多次(自然尺寸、保留尺寸、按最终宽度排版),
每次都为每段文字新建 DirectWrite layout,一页九项每键约一两百个。文字
宽高只取决于文字、字号、宽度和字体,改为记忆化,字体或外观变化时清空,
超过上限整体重来。空的辅助码和译文不再创建 layout。
2026-09-27 15:03:16 +08:00
..
2026-06-12 10:03:15 +08:00
2026-06-12 10:03:15 +08:00
2026-09-27 15:03:16 +08:00
2026-09-11 22:21:57 +08:00
2026-09-09 18:03:56 +08:00
2026-09-27 15:03:16 +08:00
2026-08-15 02:32:00 +08:00
2026-09-02 16:03:57 +08:00
2026-06-12 23:48:02 +08:00
2026-09-11 22:21:57 +08:00