Report docs/sw/sw-dotum-font-2026-10-20.md and evidence docs/sw/sw-dotum-font-qa/: Noto -> Dotum layout diff of 40 SW Stories x 4 widths, Header hysteresis trace, Footer design items (4 PASS), SW regression runs with baseline failure classification, and the isolated HMDesignSwTest-viewer run (Chrome 34/34, Firefox 15/15; original project untouched). Open items: synthesized-bold overflow in fixed Header cells and Footer POLYGON / WIPEOUT labels (design review), viewer-regression not run, macOS / Linux fallback not verified.
263 lines
6.1 KiB
JSON
263 lines
6.1 KiB
JSON
{
|
||
"base": "http://127.0.0.1:5391",
|
||
"engine": "chromium",
|
||
"loads": {
|
||
"simple.dxf": {
|
||
"status": "ready",
|
||
"ms": 1199,
|
||
"colors": 52,
|
||
"nonBg": 0.0182,
|
||
"name": "simple.dxf",
|
||
"tabs": 0
|
||
},
|
||
"BasicSample.dwg": {
|
||
"status": "ready",
|
||
"ms": 1365,
|
||
"colors": 118,
|
||
"nonBg": 0.0446,
|
||
"name": "BasicSample.dwg",
|
||
"tabs": 2
|
||
},
|
||
"civil.dwg": {
|
||
"status": "ready",
|
||
"ms": 1829,
|
||
"colors": 420,
|
||
"nonBg": 0.1904,
|
||
"name": "civil.dwg",
|
||
"tabs": 2
|
||
}
|
||
},
|
||
"results": [
|
||
{
|
||
"name": "Font: SWViewerHeader text = Dotum (SW default)",
|
||
"result": "PASS",
|
||
"detail": {
|
||
"Dotum": 20
|
||
}
|
||
},
|
||
{
|
||
"name": "Font: rendered platform font in header = Dotum (installed, no fallback)",
|
||
"result": "PASS",
|
||
"detail": {
|
||
"Dotum": 102
|
||
}
|
||
},
|
||
{
|
||
"name": "Theme: SW token --hm-sw-header-font-family = Dotum stack",
|
||
"result": "PASS",
|
||
"detail": {
|
||
"font": "Dotum, \"돋움\", \"Malgun Gothic\", \"Apple SD Gothic Neo\", sans-serif",
|
||
"bg": "rgba(0, 0, 0, 0)"
|
||
}
|
||
},
|
||
{
|
||
"name": "Web UI token --hm-font-family-base unchanged (Noto Sans KR)",
|
||
"result": "PASS",
|
||
"detail": "\"Noto Sans KR\", \"Malgun Gothic\", \"Apple SD Gothic Neo\", sans-serif"
|
||
},
|
||
{
|
||
"name": "Load simple.dxf: status ready + drawing pixels",
|
||
"result": "PASS",
|
||
"detail": {
|
||
"status": "ready",
|
||
"ms": 1199,
|
||
"colors": 52,
|
||
"nonBg": 0.0182,
|
||
"name": "simple.dxf",
|
||
"tabs": 0
|
||
}
|
||
},
|
||
{
|
||
"name": "Load BasicSample.dwg: status ready + drawing pixels",
|
||
"result": "PASS",
|
||
"detail": {
|
||
"status": "ready",
|
||
"ms": 1365,
|
||
"colors": 118,
|
||
"nonBg": 0.0446,
|
||
"name": "BasicSample.dwg",
|
||
"tabs": 2
|
||
}
|
||
},
|
||
{
|
||
"name": "Load civil.dwg: status ready + drawing pixels",
|
||
"result": "PASS",
|
||
"detail": {
|
||
"status": "ready",
|
||
"ms": 1829,
|
||
"colors": 420,
|
||
"nonBg": 0.1904,
|
||
"name": "civil.dwg",
|
||
"tabs": 2
|
||
}
|
||
},
|
||
{
|
||
"name": "Viewer: wheel zoom changes the drawing",
|
||
"result": "PASS",
|
||
"detail": "0.316"
|
||
},
|
||
{
|
||
"name": "Viewer: drag pan changes the view",
|
||
"result": "PASS",
|
||
"detail": "0.323"
|
||
},
|
||
{
|
||
"name": "Viewer: F (fit) restores the full view",
|
||
"result": "PASS",
|
||
"detail": "0.002 < 0.327"
|
||
},
|
||
{
|
||
"name": "Header: space tab switch (inactive → active) re-renders the canvas",
|
||
"result": "PASS",
|
||
"detail": "2 tabs, now Model17,377"
|
||
},
|
||
{
|
||
"name": "Header: 샘플 dropdown opens (SWViewerMenu) with Dotum",
|
||
"result": "PASS",
|
||
"detail": {
|
||
"Dotum": 6
|
||
}
|
||
},
|
||
{
|
||
"name": "Header: Escape closes the dropdown",
|
||
"result": "PASS",
|
||
"detail": ""
|
||
},
|
||
{
|
||
"name": "Header: sample menu loads simple.dxf",
|
||
"result": "PASS",
|
||
"detail": "simple.dxf / ready"
|
||
},
|
||
{
|
||
"name": "Viewer: 2.5D switch toggles and re-renders",
|
||
"result": "PASS",
|
||
"detail": "0.0217"
|
||
},
|
||
{
|
||
"name": "Panel: 설정 opens SWViewerPanel",
|
||
"result": "PASS",
|
||
"detail": ""
|
||
},
|
||
{
|
||
"name": "Panel: text = Dotum (program list cells keep their monospace)",
|
||
"result": "PASS",
|
||
"detail": {
|
||
"Dotum": 25
|
||
}
|
||
},
|
||
{
|
||
"name": "Panel: SWViewerSlider changes value and syncs the number input",
|
||
"result": "PASS",
|
||
"detail": "1 → 1.2, input 1.2"
|
||
},
|
||
{
|
||
"name": "Panel: SWViewerSwitch toggles (그리드)",
|
||
"result": "PASS",
|
||
"detail": "false → true"
|
||
},
|
||
{
|
||
"name": "Panel: title drag moves the panel",
|
||
"result": "PASS",
|
||
"detail": "(904,56) → (704,168)"
|
||
},
|
||
{
|
||
"name": "Panel: resize grip changes size",
|
||
"result": "PASS",
|
||
"detail": "340×520 → 413×353"
|
||
},
|
||
{
|
||
"name": "Panel: body scrolls vertically, no horizontal overflow",
|
||
"result": "PASS",
|
||
"detail": {
|
||
"scrollable": true,
|
||
"before": 0,
|
||
"after": 207,
|
||
"overflowX": false
|
||
}
|
||
},
|
||
{
|
||
"name": "Panel: no clipped text after Dotum",
|
||
"result": "PASS",
|
||
"detail": []
|
||
},
|
||
{
|
||
"name": "Panel: closes (Escape)",
|
||
"result": "PASS",
|
||
"detail": ""
|
||
},
|
||
{
|
||
"name": "Panel: 레이어 opens with layer rows",
|
||
"result": "PASS",
|
||
"detail": "2 rows"
|
||
},
|
||
{
|
||
"name": "Panel: 정보 (modal) opens and Escape closes it",
|
||
"result": "PASS",
|
||
"detail": "open=true"
|
||
},
|
||
{
|
||
"name": "Responsive 1920: header/page no horizontal overflow",
|
||
"result": "PASS",
|
||
"detail": {
|
||
"overflow": false,
|
||
"doc": false,
|
||
"more": false
|
||
}
|
||
},
|
||
{
|
||
"name": "Responsive 1180: header/page no horizontal overflow",
|
||
"result": "PASS",
|
||
"detail": {
|
||
"overflow": false,
|
||
"doc": false,
|
||
"more": false
|
||
}
|
||
},
|
||
{
|
||
"name": "Responsive 900: header/page no horizontal overflow (More shown)",
|
||
"result": "PASS",
|
||
"detail": {
|
||
"overflow": false,
|
||
"doc": false,
|
||
"more": true
|
||
}
|
||
},
|
||
{
|
||
"name": "Responsive 900: More opens with collapsed items",
|
||
"result": "PASS",
|
||
"detail": "5 items"
|
||
},
|
||
{
|
||
"name": "Responsive 560: header/page no horizontal overflow (More shown)",
|
||
"result": "PASS",
|
||
"detail": {
|
||
"overflow": false,
|
||
"doc": false,
|
||
"more": true
|
||
}
|
||
},
|
||
{
|
||
"name": "Responsive 375: header/page no horizontal overflow (More shown)",
|
||
"result": "PASS",
|
||
"detail": {
|
||
"overflow": false,
|
||
"doc": false,
|
||
"more": true
|
||
}
|
||
},
|
||
{
|
||
"name": "Responsive 375: More opens with collapsed items",
|
||
"result": "PASS",
|
||
"detail": "8 items"
|
||
},
|
||
{
|
||
"name": "Console / page / HTTP errors: none (favicon.ico 404 = program has no icon, pre-existing)",
|
||
"result": "PASS",
|
||
"detail": {
|
||
"errors": [],
|
||
"favicon404": 0
|
||
}
|
||
}
|
||
],
|
||
"errors": []
|
||
} |