Add bundled bus fonts and shared font favorites

This commit is contained in:
2026-10-12 15:00:40 +08:00
parent c9dd03c23b
commit 4be74a34f9
181 changed files with 2078575 additions and 76 deletions
@@ -0,0 +1,32 @@
# 公交窄体双字号优化验收
两款独立字格:类似公交窄体(推荐16px)8×16,类似公交窄体(推荐32px)16×32。每款6884码位,含6763个GB2312汉字。32px中文骨架来源GNU Unifont18.0.01,16px来源Fusion Pixel Font;官方材料、许可、锁定wheel、字模与修订理由随源码保存。正常构建离线完成,不读取Downloads附件。
## 证据
- glyphs-16、glyphs-32:全码位像素图册、audit.json和公交文字样张。全库无空字(空格除外)、灰阶和越格;重复仅ASCII空格/全角空格。
- comparison:旧16、优化16、旧16直接放大、新32的四路比较,以及六类代表字。旧款仅作历史对照,没有登记为第三款可选字体。
- 网页站名对比、网页包围字对比、网页密集字对比、字体选择器截图:实际后端文字层预览及选择器,不以浏览器原生字体代替帧。
- visual-review.json:14页小字、27页大字及分类图的视觉复核记录和局限。
## 本机验证
字体/目录/模板/动图/图层/API定向回归89项通过;新增32→64px整数放大后,放大专项4项通过。Node字体选择器和场景模型24项通过。在含中文及空格的隔离目录新建venv,使用随交付wheel离线安装并重建,两款TTF及manifest字节一致,全字库像素校验通过。
## 已验证经验
Unifont BDF 的BITMAP行尾空格须先去除;单纯cmap覆盖检查不能发现空字。共享像素轮廓边需要抵消,避免FreeType灰阶接缝。字体版本使用缩略图辅助stamp及URL参数,不能修改作品修订号。板端完整测试多份字体占用使/run tmpfs不足,生产未切换;改用任务专属/var/tmp保存测试产物后重测。稳定要求与经验已补入测试相关资料/如何测试/核桃派点阵屏控制服务测试流程.md。
## 边界
分类规则生成与独立网格改绘分别记录,不把全部字形声称为逐字手工设计。16px复杂汉字仍需要简化;32px的硼、牖、鼬等少见密集字仍较拥挤,需要结合词语辨识。没有真实用户辨识率实验。主要站名和分类字的结构细节优于旧款直接放大;不能据此推断所有字同等易读。
本轮不修改Android、不导出OTA/IMG、不推进VERSION,不启动摄像头或实屏测试图案。
## 部署
板端候选90项中89项通过,1项Node跨语言测试在板端跳过(本机已通过)。候选通过后保护运行目录,备份替换文件与登记字体,切换真实systemd服务。部署记录见deployment-result.json:446个其他持久文件摘要不变,变化仅为两款新增字体和摘要一致的旧字体删除。现有设备作品没有引用被更新字体,受影响缩略图数量为0;缩略图重建和不改修订的路径由候选测试验证。
设备验证见device-verification.json与device-frames:15组最终帧与本机逐像素一致;旧摘要别名与优化16px相同。真实systemd服务重启后两款仍可选,持久数据摘要不变。22个部署代码/字体/登记/来源校验文件与本机摘要一致,旧程序资源不再存在。rollback.tar.gz为历史回滚备份,未登记为可选字体。更新前完整持久文件摘要保存在本项目被忽略的受保护本机材料中,不进入公开日志。
cleanup-and-hashes.json登记已清理的板端目录:/run/matrix-screen-controller/bus-fonts-v2-20261012、/var/tmp/qms-bus-fonts-v2-tests-20261012,以及/var/tmp/qms-bus-fonts-v2-rollback.tar.gz。未清理其他设备材料。此前被策略拒绝的本机临时清理未重试或换方法绕过;本轮受保护基线和调试材料继续留在项目本机测试环境.local中。
@@ -0,0 +1,78 @@
88a028196ffc4c43478b554d38dfd720e242f137740f186a2822b470ca333a1a cleanup-and-hashes.json
78cba5da3949fb038adb35ca349620f35bf69319cd5849691f2c6f730766fe00 comparison/class-dense.png
ed8e0b27faf0dc469112f9680eee67b36bf75f58d6f6673a72981849c446430b comparison/class-diagonal.png
4e03858f4030113de2e97c819182cc14694013f256d0b6489600acdb62441158 comparison/class-enclosure.png
68cfa34f74392b66104abe5444ec8130ee02106d139f7ba348949f5d880ca6b5 comparison/class-latin.png
8e99f94d0a2702bdbdf21c9e091ccb182efcfe2726eb8e8036d2b8dca8a25410 comparison/class-left_right.png
ed1041e5592156b0145ba558fdb80835f1d988de01a629065311a7b692695e56 comparison/class-stacked.png
f057b3e3d7d51beac5631ceb94cefd477b559536476d2ebd33ff00a20372e837 comparison/four-way.png
ae4b88a5536ce7dd9883b9954e4066bcea2f29687d9abfd430fa1c28384daaf7 deployment-result.json
cf4065a36fed4367cc030226b8185b8f5e232f2160f55143fb43ca087ec75ce5 device-frames/16-0O1Il5S8B.png
5e3ae43e4a4a3499fd9d4b1207b708c367c21f864c3fb8851e3ed4fa472e79e2 device-frames/16-人入大文.png
61afaa65a9c1bd59c0dcc9f250e698a17f97dc0074fda4fd375e6f1a5d147cf2 device-frames/16-口日目田.png
6df42db997f9505d5b3cae5d3cb758afb9c3b97548e70de942d0ff8cd92e8030 device-frames/16-站铁路湖.png
2280286d9c8e932fabe1338e93345fc5f694d81c00982a03b6c87d300f44bf44 device-frames/16-高花草重.png
75614aed2e0c3150fed451c9a34886343b34f5ae0bbdd34e8a3f138660e0fd85 device-frames/16-高铁北站21路.png
af9e5da1a383e7e9996de6502889bc6f73dbca519cb12ad8dda05a9d941a9a66 device-frames/16-鹤警藏赢.png
787a5098a408365b70f4eb4eaf3a4e6ea2ca4298ecfa51501e011d52b2d74eb5 device-frames/32-0O1I.png
f2504e21687c6bba6b4b8a4699fb5d59d69d2bcca89cf8ef0a1347089f519854 device-frames/32-l5S8B.png
f2fbaa613eb13cab5d095ab9492926db2b4b6aa97478ba4e50a59c38f2dbd716 device-frames/32-人入大文.png
d1072001ba2772457e89b031cb3bdd4be31287e62b3a6be01099c096905cc96c device-frames/32-口日目田.png
74093b55f7bfb0ccff693f6cde2f714893832e5d7ff94674b377b506a365adc7 device-frames/32-站铁路湖.png
0cf5c1d45a1f6fff029b3fac98a57db83f05e8d7580627aad32cfb7771de1e58 device-frames/32-高花草重.png
16d8736d84a66fd03ee155ac33654219ae2e1855d4daa03342bd1fe04c580af9 device-frames/32-高铁北站.png
757e0812f199ba3d9a6a2446fcdfa1a06b0f08d426fe8a705626e5f227f58f17 device-frames/32-鹤警藏赢.png
f923d1785788181ad8cdf75e50b5d043420bab9dcfa0dc7256821d1cac345e3a device-verification.json
348dd8c9aee0266420e3585275d35d6d1c4f9a3648caaa0362ebcb7be488c43b glyphs-16/audit.json
2c232f44355d72e242423118d46213418050605b85ef9df67acc59cb1f901750 glyphs-16/comparison.png
67196a50f2687afe57233ed49996dc7ed4353cb1d4f1341af31a5b5dfa3694ea glyphs-16/glyphs-01.png
70731b53a11fe1e1faf81fa19ede7680473e017932a1dccc9b1b19d6dd545c55 glyphs-16/glyphs-02.png
ece1b9e90e3bf28273eb9651aa15e45a2f04dac620b6ed85c2ca6baa45620047 glyphs-16/glyphs-03.png
9bc2ac1601d58cbb1abb588397709be752b4c0297be5a962c807e94654e87bfd glyphs-16/glyphs-04.png
2e678c7bbf004c62f60b4277ad0a042b28d57eec0c6493178422ade060b91ecb glyphs-16/glyphs-05.png
4749e48a82df7bbf922214740c84f52d62633a0e405b0012a6988fa62442738a glyphs-16/glyphs-06.png
ebfeb09c57bef917f6c30f0fe397b7a99e10f117e4ee203e814f80bc5819b6ba glyphs-16/glyphs-07.png
efd54aefba31d33039bb9b2f3c6fc3c86218f9954f2ca7f9176f39887cdb2b10 glyphs-16/glyphs-08.png
7a2961bfacd46ace736f8b7c80c9f909390129c4ef3b9085b8ca1651ea17cab6 glyphs-16/glyphs-09.png
68c8ab5f21a074922eb018205796f99ec46492306d831c14b1c8092bfa403225 glyphs-16/glyphs-10.png
300cd2062b68d4449fa299aedecee9c61c43f11b3ca6b306ef46416060cd3eec glyphs-16/glyphs-11.png
d6f3395494dad5d8b5c29a6c799763ae9f105c686306770bf13fb08e6f31c4d6 glyphs-16/glyphs-12.png
3c2f146c8d86af6fc43e91613e9ce46b9ef61d9a26c5a5c39aaa09ad7cc9ae19 glyphs-16/glyphs-13.png
a2ee91bc201e7d4f90adb738abbb1fa898e02ec0e901e24e7c7457a39a5fb390 glyphs-16/glyphs-14.png
21be522fb032972a90432aaaf744541f53c66666f5312f7fe8eaf2415a204662 glyphs-32/audit.json
9f74440751e4b38a0362c515ffbec100ba660c9c7ff881d23ed485fd0bd604ed glyphs-32/comparison.png
777c0f5c89e3646bbe1a65aa6125926688d89c6973ecfe17c3a4c07e457af124 glyphs-32/glyphs-01.png
b9e708ef7f2fc9cb11b5f515510171afc4a24a38ac7edb86004cb04e377e7cd7 glyphs-32/glyphs-02.png
fa27bac94e0610868cb5cb97e74142e78824349160bcd581d60b9733341668e6 glyphs-32/glyphs-03.png
768485669bb9d580e47740b41b9b0b94bdefe55e70c745b413aa70561459aa1e glyphs-32/glyphs-04.png
286a4343832e1d342c358ebcc1acae2de6876ee99ca7f1bdf5361a98f7f115c7 glyphs-32/glyphs-05.png
2bcef2e11d1d09d65248e0eaeee1dc5f7038764198bfb95b23d6df8bf00b5a87 glyphs-32/glyphs-06.png
99839241053a32cc3627c45b107d0c8dbece838586a26972862800458cfaf024 glyphs-32/glyphs-07.png
0e34aa1bab395b6f75bfce6950bda03d5f1f0ac62bd800c7cce21ec1b099c0df glyphs-32/glyphs-08.png
a58af2596da4a2fe3be0904abd003a057885a83070c4084aab7ef6661af8fcaa glyphs-32/glyphs-09.png
67b721a6cb876733d4341a029673e0f916006edc039e2bd2252246e329cd0327 glyphs-32/glyphs-10.png
7dba664403211533678220b05946554a2942030d679101c213a523544c0ce0e0 glyphs-32/glyphs-11.png
946667d85424c31d2fb6b18b5ef7bd59deceefabd4896e96b96663db2176aed2 glyphs-32/glyphs-12.png
84150181e523c3831c13bd75e2913913b44c7f11cfe3ba2fcf714bebe97830e8 glyphs-32/glyphs-13.png
5eea7f55e2e986e3994f8e25df2200d800b3d232e1c038ad408089d09d9be5e9 glyphs-32/glyphs-14.png
5ef624f7f9c3a7b8121f12ca2329d16d4bec61de23197915f78058d70bc0c488 glyphs-32/glyphs-15.png
05a589e15269798a81f11626c7c7d5d05a5980afa3e79e94a4e38edba8b0942b glyphs-32/glyphs-16.png
51a0cbc98c147cd0c0eaa0eb851ff24a7771d066df304ed9898a54093c2f1863 glyphs-32/glyphs-17.png
c3dba0870b405f6bcfd887e2a35a51c07c7eca8ee57accdd4f6f36fff1d87d80 glyphs-32/glyphs-18.png
cae7953dcd6b115ff2cbbad6f8f43d8a1eb41b290c67a92c7fdc8a5857b64058 glyphs-32/glyphs-19.png
d718821127f635f1108f8cd792277eb80a17efcec8b2a5255005bd2b9da7ee44 glyphs-32/glyphs-20.png
02e3dd420c9226ee4a599a670b8fc0e6af12799b449b7cd10b55d5464d9a5c20 glyphs-32/glyphs-21.png
18307bb08ce66800491dc753dbf2e8a365ac78c5caea8c051514f6bda30ef439 glyphs-32/glyphs-22.png
fc418d2e43383d05c8594ec713b7fa37d2435373f09525b6b63dff03d3131435 glyphs-32/glyphs-23.png
967185f45c6e0311ac2ebe657b65e8943652fd0b37c208773270ac58a0b8269c glyphs-32/glyphs-24.png
1dc5cfb53a93ef324210f8c046e726c3c98c993ab3ee6fe905e83686498e2596 glyphs-32/glyphs-25.png
93245747ed06e16df5ee374eb09c12dc1a9e0fb68d813860af18a895df1a9970 glyphs-32/glyphs-26.png
c7fb0a5a4fefb78677c41152b3c31761f8cd479f90c62d7cb1bdbcb7cf4c357e glyphs-32/glyphs-27.png
3a9fb309a872a65252fab71127d5a1bbee8e0723442d2716bfe99c82ca4f31ee README.md
0919ae2b0b7df6ba3f57f926a28cc518bf08dd8c848bb71bf9d7251208eaa166 rollback.tar.gz
135eb953e755af5841d977f7eb692bfccb8f719fa69d8371b81071e5c747abad test-results.json
613922e85b3a53b593d640c7312859511dbf83050fdd6de7dc723be6f27726b5 visual-review.json
3558b3c2a81d83e30d75719f6f6b40317e0482f20608ed2908bda7a1388abbd0 字体选择器.jpg
c0871027be3f1264b8c3895a3467ea2e380c5a66fdded53c9a3af92176a7c87c 网页包围字对比.jpg
3a310e017c2c9b308c9f6534a04475ecde883f5b3a19c5aa4a6eb873a5081b34 网页密集字对比.jpg
96522056ba2b20a7b25f3b75780c6aee6558d86dff2c1244969ac0bd7b211588 网页站名对比.jpg
@@ -0,0 +1,10 @@
{
"deployed_file_hashes_verified": 22,
"protected_baseline_equal_to_deployment_result": true,
"service_active": true,
"cleaned": [
"/run/matrix-screen-controller/bus-fonts-v2-20261012",
"/var/tmp/qms-bus-fonts-v2-tests-20261012",
"/var/tmp/qms-bus-fonts-v2-rollback.tar.gz"
]
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 4.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

@@ -0,0 +1,51 @@
{
"result": "deployed",
"unchanged_persistent_files": 446,
"changed_allowed": [
"fonts/aba652e330975ff3db2f41a2795a2d0478806ed83c52197acdbee85291cf5111.font",
"fonts/b1d4035f2fa9dfd839f1b573b994cbec245f041c4a0a62ee9ef1a7c7b1bfa126.font",
"fonts/d38bf29d6408a6f731865a1ca760a80b5156ebf6ab96d5ad8d649df28163564c.font"
],
"affected_thumbnails": [],
"old_font_removed": true,
"runtime_survived_stop": true,
"manifest": {
"version": 2,
"fonts": [
{
"id": "builtin:walnut-bus-8x16",
"file": "SimilarBus8x16.ttf",
"sha256": "aba652e330975ff3db2f41a2795a2d0478806ed83c52197acdbee85291cf5111",
"label": "类似公交窄体(推荐16px)",
"family": "类似公交窄体(推荐16px)",
"style": "Regular",
"glyph_count": 6884,
"recommended_size": 16,
"cell": [
8,
16
]
},
{
"id": "builtin:walnut-bus-16x32",
"file": "SimilarBus16x32.ttf",
"sha256": "b1d4035f2fa9dfd839f1b573b994cbec245f041c4a0a62ee9ef1a7c7b1bfa126",
"label": "类似公交窄体(推荐32px)",
"family": "类似公交窄体(推荐32px)",
"style": "Regular",
"glyph_count": 6884,
"recommended_size": 32,
"cell": [
16,
32
]
}
],
"obsolete": [
"d38bf29d6408a6f731865a1ca760a80b5156ebf6ab96d5ad8d649df28163564c"
],
"aliases": {
"user:d38bf29d6408a6f731865a1ca760a80b5156ebf6ab96d5ad8d649df28163564c:0": "builtin:walnut-bus-8x16"
}
}
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 241 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 215 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 208 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 299 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 271 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 348 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 276 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 265 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 256 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 405 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 225 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 466 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 382 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 428 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 606 B

@@ -0,0 +1,9 @@
{
"restart_persistent_unchanged": true,
"old_alias_pixel_match": true,
"font_labels": [
"类似公交窄体(推荐16px)",
"类似公交窄体(推荐32px)"
],
"local_device_pixel_equal": 15
}
@@ -0,0 +1,174 @@
{
"glyph_count": 6884,
"grey": [],
"blank": [],
"right_edge_lit": [],
"duplicates": [
[
"0020",
"3000"
]
],
"densest_32": [
{
"codepoint": "86D0",
"lit_pixels": 67,
"density": 0.5234375
},
{
"codepoint": "7792",
"lit_pixels": 67,
"density": 0.5234375
},
{
"codepoint": "916E",
"lit_pixels": 66,
"density": 0.515625
},
{
"codepoint": "817C",
"lit_pixels": 66,
"density": 0.515625
},
{
"codepoint": "811A",
"lit_pixels": 66,
"density": 0.515625
},
{
"codepoint": "7784",
"lit_pixels": 66,
"density": 0.515625
},
{
"codepoint": "64D0",
"lit_pixels": 66,
"density": 0.515625
},
{
"codepoint": "571C",
"lit_pixels": 66,
"density": 0.515625
},
{
"codepoint": "5704",
"lit_pixels": 66,
"density": 0.515625
},
{
"codepoint": "9E4F",
"lit_pixels": 65,
"density": 0.5078125
},
{
"codepoint": "9B4D",
"lit_pixels": 65,
"density": 0.5078125
},
{
"codepoint": "9190",
"lit_pixels": 65,
"density": 0.5078125
},
{
"codepoint": "8774",
"lit_pixels": 65,
"density": 0.5078125
},
{
"codepoint": "80F4",
"lit_pixels": 65,
"density": 0.5078125
},
{
"codepoint": "7F71",
"lit_pixels": 65,
"density": 0.5078125
},
{
"codepoint": "570A",
"lit_pixels": 65,
"density": 0.5078125
},
{
"codepoint": "5708",
"lit_pixels": 65,
"density": 0.5078125
},
{
"codepoint": "5703",
"lit_pixels": 65,
"density": 0.5078125
},
{
"codepoint": "9CD3",
"lit_pixels": 64,
"density": 0.5
},
{
"codepoint": "961A",
"lit_pixels": 64,
"density": 0.5
},
{
"codepoint": "8DDA",
"lit_pixels": 64,
"density": 0.5
},
{
"codepoint": "89D0",
"lit_pixels": 64,
"density": 0.5
},
{
"codepoint": "89CF",
"lit_pixels": 64,
"density": 0.5
},
{
"codepoint": "8334",
"lit_pixels": 64,
"density": 0.5
},
{
"codepoint": "77B0",
"lit_pixels": 64,
"density": 0.5
},
{
"codepoint": "77A9",
"lit_pixels": 64,
"density": 0.5
},
{
"codepoint": "56EB",
"lit_pixels": 64,
"density": 0.5
},
{
"codepoint": "56E4",
"lit_pixels": 64,
"density": 0.5
},
{
"codepoint": "9F83",
"lit_pixels": 63,
"density": 0.4921875
},
{
"codepoint": "9CB4",
"lit_pixels": 63,
"density": 0.4921875
},
{
"codepoint": "9603",
"lit_pixels": 63,
"density": 0.4921875
},
{
"codepoint": "9522",
"lit_pixels": 63,
"density": 0.4921875
}
]
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 82 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 83 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 85 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 84 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 84 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 86 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 86 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 85 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 85 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 84 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 88 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 85 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 87 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

@@ -0,0 +1,174 @@
{
"glyph_count": 6884,
"grey": [],
"blank": [],
"right_edge_lit": [],
"duplicates": [
[
"0020",
"3000"
]
],
"densest_32": [
{
"codepoint": "787C",
"lit_pixels": 318,
"density": 0.62109375
},
{
"codepoint": "7256",
"lit_pixels": 316,
"density": 0.6171875
},
{
"codepoint": "9F2C",
"lit_pixels": 312,
"density": 0.609375
},
{
"codepoint": "917E",
"lit_pixels": 312,
"density": 0.609375
},
{
"codepoint": "68DA",
"lit_pixels": 306,
"density": 0.59765625
},
{
"codepoint": "6175",
"lit_pixels": 306,
"density": 0.59765625
},
{
"codepoint": "5220",
"lit_pixels": 304,
"density": 0.59375
},
{
"codepoint": "955B",
"lit_pixels": 302,
"density": 0.58984375
},
{
"codepoint": "9EFC",
"lit_pixels": 300,
"density": 0.5859375
},
{
"codepoint": "918B",
"lit_pixels": 298,
"density": 0.58203125
},
{
"codepoint": "89CF",
"lit_pixels": 298,
"density": 0.58203125
},
{
"codepoint": "812F",
"lit_pixels": 298,
"density": 0.58203125
},
{
"codepoint": "580B",
"lit_pixels": 298,
"density": 0.58203125
},
{
"codepoint": "570A",
"lit_pixels": 296,
"density": 0.578125
},
{
"codepoint": "9CA1",
"lit_pixels": 294,
"density": 0.57421875
},
{
"codepoint": "8E66",
"lit_pixels": 294,
"density": 0.57421875
},
{
"codepoint": "537F",
"lit_pixels": 294,
"density": 0.57421875
},
{
"codepoint": "9E42",
"lit_pixels": 292,
"density": 0.5703125
},
{
"codepoint": "916C",
"lit_pixels": 292,
"density": 0.5703125
},
{
"codepoint": "81CC",
"lit_pixels": 292,
"density": 0.5703125
},
{
"codepoint": "8169",
"lit_pixels": 292,
"density": 0.5703125
},
{
"codepoint": "7EF7",
"lit_pixels": 292,
"density": 0.5703125
},
{
"codepoint": "77B0",
"lit_pixels": 292,
"density": 0.5703125
},
{
"codepoint": "73CA",
"lit_pixels": 292,
"density": 0.5703125
},
{
"codepoint": "5889",
"lit_pixels": 292,
"density": 0.5703125
},
{
"codepoint": "9163",
"lit_pixels": 290,
"density": 0.56640625
},
{
"codepoint": "84AF",
"lit_pixels": 290,
"density": 0.56640625
},
{
"codepoint": "6930",
"lit_pixels": 290,
"density": 0.56640625
},
{
"codepoint": "9EDC",
"lit_pixels": 288,
"density": 0.5625
},
{
"codepoint": "9CAB",
"lit_pixels": 288,
"density": 0.5625
},
{
"codepoint": "97B4",
"lit_pixels": 288,
"density": 0.5625
},
{
"codepoint": "90E6",
"lit_pixels": 288,
"density": 0.5625
}
]
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 47 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 52 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 51 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 52 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 54 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 54 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 52 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 54 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 54 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 54 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 55 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 54 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 55 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 55 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 54 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 55 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 54 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 55 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 51 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 55 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 56 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 56 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 53 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 54 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 55 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 56 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 51 KiB

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:0919ae2b0b7df6ba3f57f926a28cc518bf08dd8c848bb71bf9d7251208eaa166
size 3373825
@@ -0,0 +1,26 @@
{
"local_python": {
"passed": 89,
"additional_integer_scaling_passed": 4
},
"local_node": {
"passed": 24
},
"candidate_board": {
"passed": 89,
"skipped": 1,
"skip_reason": "Node仅用于本机跨语言一致性,本机已通过"
},
"offline_isolated_build": {
"fonts_and_manifest_identical": true,
"both_full_pixel_audits_passed": true
},
"first_board_attempt": {
"production_unchanged": true,
"cause": "run tmpfs exhausted by test font copies",
"passed": 59,
"failed": 29,
"skipped": 1
},
"resolved": "task test data moved to var/tmp and full candidate regression passed"
}
@@ -0,0 +1,20 @@
{
"reviewed_sheets": {
"16px": 14,
"32px": 27
},
"classification_sheets": 6,
"small_revisions": 73,
"large_revisions": 120,
"boundary": {
"16px": [
"复杂汉字压缩仍会降低辨识度;优先32px"
],
"32px": [
"硼 U+787C",
"牖 U+7256",
"鼬 U+9F2C"
],
"note": "密度较高的少见字仍需结合实际词语辨识;没有重复汉字轮廓,但这不等于所有字在单字条件下同等易读。"
}
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 53 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 87 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 64 KiB