페이지 분할 대조 — 갈래 2 vs 갈래 1
같은 표본과 같은 건수에서 서버 조판이 낸 페이지 경계를 갈래 1 의 DOM 실측 경계표(rowsPerPage.measured.ts)와 한 행 단위로 맞대 본다. 두 값이 다르면 조판 치수가 틀린 것이다.
25칸 중 5칸이 어긋난다. 아래 표가 어느 표본이 몇 번째 페이지부터 몇 행 갈리는지 보여 준다. 치수로 좁힐 수 있는 몫은 이미 보정했고, 남은 것은 다음 절의 판정을 따른다.
| 표본 | 건수 | 갈래 1 페이지 | 서버 페이지 | 판정 | 처음 어긋난 페이지 | 어긋난 페이지 | 최대 행 차이 |
|---|---|---|---|---|---|---|---|
| 인사기본정보조회 | 100건 | 6 | 6 | 어긋남 | 4쪽 (19 → 20) | 2 | 1 |
| 인사기본정보조회 | 500건 | 26 | 26 | 어긋남 | 4쪽 (19 → 20) | 6 | 5 |
| 인사기본정보조회 | 1,000건 | 51 | 51 | 어긋남 | 12쪽 (19 → 20) | 4 | 3 |
| 인사기본정보조회 | 2,000건 | 101 | 101 | 어긋남 | 45쪽 (19 → 20) | 3 | 2 |
| 인사기본정보조회 | 4,000건 | 201 | 201 | 어긋남 | 45쪽 (19 → 20) | 4 | 3 |
| 세대차량 현황 | 100건 | 6 | 6 | 일치 | — | — | — |
| 세대차량 현황 | 500건 | 25 | 25 | 일치 | — | — | — |
| 세대차량 현황 | 1,000건 | 48 | 48 | 일치 | — | — | — |
| 세대차량 현황 | 2,000건 | 96 | 96 | 일치 | — | — | — |
| 세대차량 현황 | 4,000건 | 191 | 191 | 일치 | — | — | — |
| 민원일반 | 100건 | 10 | 10 | 일치 | — | — | — |
| 민원일반 | 500건 | 46 | 46 | 일치 | — | — | — |
| 민원일반 | 1,000건 | 91 | 91 | 일치 | — | — | — |
| 민원일반 | 2,000건 | 182 | 182 | 일치 | — | — | — |
| 민원일반 | 4,000건 | 364 | 364 | 일치 | — | — | — |
| 접수리스트 | 100건 | 8 | 8 | 일치 | — | — | — |
| 접수리스트 | 500건 | 36 | 36 | 일치 | — | — | — |
| 접수리스트 | 1,000건 | 72 | 72 | 일치 | — | — | — |
| 접수리스트 | 2,000건 | 143 | 143 | 일치 | — | — | — |
| 접수리스트 | 4,000건 | 286 | 286 | 일치 | — | — | — |
| 일별접수/처리현황 | 100건 | 3 | 3 | 일치 | — | — | — |
| 일별접수/처리현황 | 500건 | 14 | 14 | 일치 | — | — | — |
| 일별접수/처리현황 | 1,000건 | 27 | 27 | 일치 | — | — | — |
| 일별접수/처리현황 | 2,000건 | 53 | 53 | 일치 | — | — | — |
| 일별접수/처리현황 | 4,000건 | 106 | 106 | 일치 | — | — | — |
치수 보정 — 어디까지 맞췄나
조판 치수의 정본은 갈래 1 의 실측 경계다. 그 경계를 재현하는 치수가 있는지 표본마다 훑어, 인사를 뺀 네 표본이 함께 만족하는 값(row.data 23.7 · row.subtotal 22 · row.wrappedLine 16)을 넣었다. 25칸 중 일치가 10칸에서 20칸으로 올랐다.
| 표본 | 탐색에서 찾은 해 | 판정 |
|---|---|---|
| 인사기본정보조회 | 0 | 해 없음 — 행 높이를 상수로 두는 모델로는 실측 경계를 만들 수 없다. 보정으로 어긋남이 4000건에서 71쪽(최대 20행)에서 4쪽(최대 3행)까지 줄었을 뿐이다 |
| 세대차량 현황 | 2,725 | 기본값이 구간 안이라 이미 맞는다 |
| 민원일반 | 7,084 | 보정으로 맞췄다 — 접힌 줄 높이를 16.5 에서 16 으로 내렸다 |
| 접수리스트 | 9,016 | 기본값이 구간 안이라 이미 맞는다 |
| 일별접수/처리현황 | 6,900 | 보정으로 맞췄다 — 본문 행 높이를 23.17 에서 23.7 로 올렸다 |
이 대조가 성립하는 근거
- 갈래 1 의 실측은 표본 5종 × 건수 5단 × 3회에서 경계가 한 번도 흔들리지 않았다. 그래서 근사치 비교가 아니라 정확 비교가 된다.
- 표본 생성기는 난수를 쓰지 않는다. 같은 건수면 같은 행이 나오므로 양쪽이 같은 데이터를 나눈 것이 맞다.
- 인사기본정보에 남은 어긋남은 치수가 아니라 모델의 한계다. 행 높이를 상수로 두면 소계가 실린 페이지는 언제나 같은 행 수를 담아야 하는데, 실측은 같은 소계 페이지가 20행을 담기도 하고 19행을 담기도 한다. 근거는
metrics-fit.measured.ts에 있다. - 실측 환경은 헤드리스 Chrome 152, macOS 다. 한글 글꼴 지표가 OS 마다 달라 여기서 일치해도 Windows Chrome 에서는 다시 재야 한다. 이 표가 보증하는 것은 조판 수치가 그 환경의 실측을 재현한다는 것까지다.