@ihabdevteam/core 0.219.0 → 0.221.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +72 -0
- package/dist/components.cjs.js +76 -37
- package/dist/components.esm.css +2 -2
- package/dist/hooks.cjs.js +1 -1
- package/dist/i18n.cjs.js +1 -1
- package/dist/ihabdevteam-core.cjs.js +120 -81
- package/dist/ihabdevteam-core.d.ts +8 -1
- package/dist/packages/core/src/components/Word/useWordTablePrint.d.ts +7 -0
- package/dist/packages/core/src/components/Word/wordTablePrint.js +39 -7
- package/dist/packages/core/src/components/WordTable.css +19 -21
- package/dist/packages/core/src/components/WordTable.js +1 -8
- package/dist/packages/core/src/version.d.ts +1 -1
- package/dist/packages/core/src/version.js +1 -1
- package/dist/utils.cjs.js +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,78 @@ All notable changes to this project will be documented in this file.
|
|
|
7
7
|
> 적은 글이라, 지금 이름으로 고쳐 놓으면 그 시절에 그 이름으로 받은 사람이
|
|
8
8
|
> 제 이야기를 못 찾는다.
|
|
9
9
|
|
|
10
|
+
## 0.221.0
|
|
11
|
+
|
|
12
|
+
### 인쇄 문서가 **그 종이 칸**에 맞춰 글씨를 다시 센다
|
|
13
|
+
|
|
14
|
+
화면에서 칸 하나의 글씨 크기는 `ResizeObserver` 가 칸을 재서 `Math.min(w/기준폭, h/기준높이)`
|
|
15
|
+
로 셈하고, 그 값을 칸 안쪽에 인라인 `transform: scale(n)` 으로 **박아 둔다**. 인쇄 문서는
|
|
16
|
+
그 칸을 통째로 복사해 만든다 — 그래서 배율도 함께 굳어 따라왔다.
|
|
17
|
+
|
|
18
|
+
그런데 거기 칸은 화면 칸이 아니다. 종이(`.paper-wrap`)는 제 치수를 갖고, 인쇄가 걸리면
|
|
19
|
+
`100% × 100vh` 로 다시 바뀌며, 사람이 인쇄 대화상자에서 A4 아닌 종이를 고르면 그 `100vh`
|
|
20
|
+
가 또 달라진다. 굳은 배율을 그대로 쓰면 **화면에서 칸을 꽉 채우던 글씨가 종이에서 작아진다**
|
|
21
|
+
(사용자 신고: "화면에 보이는 칸 안에 텍스트가 pdf에서는 더 작게 보여").
|
|
22
|
+
|
|
23
|
+
A4 로 뽑으면 화면과 종이의 칸이 거의 같아 차이가 눈에 안 띄었다 — 이번에 재 보니 0.41582
|
|
24
|
+
대 0.416667, 0.2% 다. **다른 종이에서 벌어진다**: 같은 표를 Letter 가로로 두고 재니
|
|
25
|
+
0.416667 이어야 할 자리에 0.3875 가 필요했다(-7.0%).
|
|
26
|
+
|
|
27
|
+
고침은 둘로 나뉜다.
|
|
28
|
+
|
|
29
|
+
- **칸이 기준값을 새겨 둔다** — `.word-table-cell` 에 `data-ref-w` · `data-ref-h` 가 붙는다.
|
|
30
|
+
화면 배율을 만든 그 두 수다.
|
|
31
|
+
- **인쇄 문서가 같은 셈을 다시 한다** — 문서 안 `refit()` 이 칸마다 실제 배치 크기를 읽어
|
|
32
|
+
`Math.min(w/refW, h/refH)` 를 새로 쓴다. 처음 열 때 · 창 크기가 바뀔 때 · `beforeprint` ·
|
|
33
|
+
`print` 매체 질의가 켜질 때(파이어폭스는 이쪽이 먼저다) · 자동 인쇄가 그림과 글꼴을 다
|
|
34
|
+
기다린 직후, 이렇게 다섯 번 부른다. 인쇄 · 새 창 · 내려받은 HTML 이 한 길을 쓰므로
|
|
35
|
+
셋 다 함께 고쳐진다.
|
|
36
|
+
|
|
37
|
+
**1 을 넘겨도 천장을 안 씌운다** — 화면과 똑같은 셈이다(2026-09-22 결정). 화면이 안 씌우는데
|
|
38
|
+
종이만 씌우면 글자만 있는 칸의 글씨가 종이에서만 작아진다.
|
|
39
|
+
|
|
40
|
+
`clientWidth` 로 읽는다 — 배치 좌표라 종이에 걸린 미리보기 `transform: scale()` 에 안 흔들린다.
|
|
41
|
+
|
|
42
|
+
### 놀이터 — 인쇄 미리보기에서 머리글 한 줄을 걷었다
|
|
43
|
+
|
|
44
|
+
`useWordTablePrint` 의 `header` 는 종이 맨 위에 한 줄(`.paper-head`)을 찍는다. 띠가 생기기
|
|
45
|
+
전에는 그것이 종이의 유일한 식별자였는데, 이제 위 띠가 표 이름 · 기관 · 표 번호를 싣는다 —
|
|
46
|
+
둘 다 주면 같은 것이 종이에 두 번 찍힌다. 놀이터 견본에서 걷었고(`최소대립쌍표 · 견본`),
|
|
47
|
+
`header` 프롭 설명에 겹침을 적었다. **프롭은 그대로다** — 띠를 안 쓰는 종이(채점지 등)에는
|
|
48
|
+
여전히 이 줄이 유일한 식별자다.
|
|
49
|
+
|
|
50
|
+
## 0.220.0
|
|
51
|
+
|
|
52
|
+
### 되돌림 — 띠가 표와 **함께** 줄어든다 (`--wt-unscale` 을 걷는다)
|
|
53
|
+
|
|
54
|
+
0.213.0 에서 띠만 배율을 되돌려 화면에서 크기를 고정했다. 미리보기 상자 폭마다 로고와
|
|
55
|
+
글씨가 달라 보이는 것이 싫다는 판단이었고, 그 자체는 맞는 관찰이었다. 그런데 **종이에서는
|
|
56
|
+
띠도 표와 같은 비율로 찍힌다** — 그래서 인쇄 문서에서는 그 되돌림을 다시 꺼야 했고, 그
|
|
57
|
+
손질이 있다는 것 자체가 화면과 종이가 어긋나 있다는 증거였다.
|
|
58
|
+
|
|
59
|
+
말귀 실측(2026-09-30, 같은 표·같은 값):
|
|
60
|
+
|
|
61
|
+
| | 미리보기 100% | 미리보기 60% |
|
|
62
|
+
|---|---|---|
|
|
63
|
+
| 띠 그린 높이 | 36px | **36px — 그대로** |
|
|
64
|
+
| 칸 낱말 높이 | 23.2px | **11.7px — 절반** |
|
|
65
|
+
| **낱말 ÷ 띠** | 0.64 | **0.33** |
|
|
66
|
+
|
|
67
|
+
미리보기가 할 일은 **종이를 미리 보여 주는 것**이라, "폭이 달라도 띠 크기가 같다" 보다
|
|
68
|
+
"폭이 달라도 표와 띠의 견줌이 같다" 가 지켜야 할 한결같음이다. 되돌림을 통째로 걷는다 —
|
|
69
|
+
값은 이제 **종이 좌표**다.
|
|
70
|
+
|
|
71
|
+
고친 뒤 재 보니 견줌이 **0.967 로 고정**이다(미리보기 배율 0.499 · 0.347에서 같은 값).
|
|
72
|
+
|
|
73
|
+
**딸려 사라진 것 둘**: 인쇄 문서에서 끄던 `--wt-unscale: 1 !important`(`@media print`)와,
|
|
74
|
+
복사할 때 인라인 값을 지우던 손질. **두 인쇄 길에 각각 손대야 했던 것이 아예 없어졌다** —
|
|
75
|
+
자취를 남기면 다음 사람이 그것을 보고 되살리므로, 코어 전체에 한 글자도 안 남기고 시험이
|
|
76
|
+
그것도 잰다.
|
|
77
|
+
|
|
78
|
+
**지금 쓰는 쪽 값은 곧 바뀐다.** 말귀가 `:root` 에 둔 13/11 · 34/24 는 *띠가 안 줄어드는
|
|
79
|
+
상태에서 화면을 보고 정한 값*이다. 띠가 함께 줄기 시작하면 종이를 다시 보고 정할 값이므로,
|
|
80
|
+
0.219.0 에서 옮긴 기본값(13/11)도 그때 함께 본다.
|
|
81
|
+
|
|
10
82
|
## 0.219.0
|
|
11
83
|
|
|
12
84
|
### 달라짐 — 띠 글씨 기본값을 **위 13px · 아래 11px** 로
|