task 1274: 교육 통합 미주 간격·overflow 보정#1277
Closed
jangster77 wants to merge 26 commits into
Closed
Conversation
Collaborator
Author
|
다시 open 하겠습니다. goal 로 수정한건 수동으로 시각적검증을 안하고 pr 하면 안되네요 ㅠ |
- 미주 textless TAC 그림/도형 문단의 vpos rewind를 height_cursor/typeset 공통 보정\n- 마지막 partial continuation 앞 미주 tail의 작은 bottom bleed 허용\n- 2024-09-between20 p22~p24 흐름과 p1175 overflow 정리\n\n검증:\n- cargo test --test issue_1139_inline_picture_duplicate -- --nocapture\n- cargo build --bin rhwp\n- python3 scripts/task1265_visual_sweep.py --target 2024-09-between20\n- python3 scripts/task1265_visual_sweep.py
- cargo test --tests의 issue_241 실패를 확인\n- upstream/devel 별도 worktree에서도 같은 단일 테스트 실패를 재현\n- Task 1274 PDF/PNG 비교 완료와 별개인 기준 브랜치 실패로 기록
- GitHub Issue edwardkim#1274 생성 후 계획서/단계문서/스크립트 파일명을 1274 기준으로 변경\n- 문서 본문, sweep 출력 경로, 회귀 테스트 함수명을 1274 기준으로 변경\n- task1274 sweep과 핵심 회귀 테스트로 번호 변경 후 동작 확인
2022-09 17쪽 문29 제목과 다음 본문이 겹치는 page-path 미주 하단 배치를 보정한다. visual sweep에 문항 제목/다음 본문 bbox overlap 검출 지표를 추가하고 stage22/stage23 검증 기록을 갱신한다.
0c5c467 to
a85c8d8
Compare
edwardkim
added a commit
that referenced
this pull request
Jun 4, 2026
Squash-accept PR #1277. Validated with focused tests, wasm build, and maintainer visual check.
Owner
|
검토 및 로컬 통합 완료했습니다. PR #1277 변경은
검토 중 발견된 기여 감사합니다. 이 PR은 반영 완료 상태로 close 처리하겠습니다. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
문제집/문항별 개선
쪽 표기는
mydocs/working/task_m100_1274_stage18.md이후 stage 문서와scripts/task1274_visual_sweep.py산출물 기준이다.3-09월_교육_통합_2022.hwpissue_1274_2022_sep_page18_question26_equation_paragraph_reserves_height로 회귀 방지한다.3-09월_교육_통합_2024-미주사이20.hwp3-09월_교육_통합_2024-미주사이20.hwp3-09월_교육_통합_2024-미주사이20.hwp3-09월_교육_통합_2024-미주사이20.hwp3-10월_교육_통합_2022.hwp이차식 ...줄과 식이 같은 위치에 찍혔다.pi=586 -> 587 -> 588순서로 아래로 진행한다.issue_1274_2022_oct_page11_question20_equation_tail_stays_in_frame로 고정했다.3-10월_교육_통합_2022.hwp3-10월_교육_통합_2022.hwp3-10월_교육_통합_2022.hwp조건 (가)에서로 시작한다. frame overflow 오탐은 제거했다.3-11월_실전_통합_2022.hwp3-11월_실전_통합_2022.hwpiv) x>1일 때, 12쪽 다음 식iv) x>1일 때는 11쪽 끝에 남고 다음 식은 12쪽 첫머리에서 시작한다.3-11월_실전_통합_2022.hwppi=571split이 빨라 PDF보다 좌/우 단 분기가 달랐다.(ⅲ)문단부터 시작한다.samples/hwpx/issue_241.hwpxInFrontOfText도장 host가 줄 진행량을 예약하지 않아 한컴의 날짜/서명/도장 관계와 달랐다.issue_241두 테스트가 모두 통과한다.23/23/23,20/20/20,23/23/23,24/24/24,18/18/18,21/21/21로 1:1 유지된다.공통 로직 변경
src/renderer/layout.rs: 텍스트 없는 non-TAC 그림/도형 host를 phantom text 없이 별도Shape경로로 렌더하고,InFrontOfText + vert_rel_to=Parahost는 한컴처럼 line advance만 예약한다. 미주 하단 late tail overflow 판정도 정리했다.src/renderer/layout/paragraph_layout.rs: 빈 spacer line, 미주 가상 빈 문단, 텍스트 없는 TAC 수식 줄의 baseline 정렬과 overflow 수집 기준을 보정했다.src/renderer/typeset.rs: compact 미주 단 하단 fit, 내부 vpos rewind, 큰미주 사이예약값, 문항 제목과 첫 풀이 줄 동반 넘김을 공통 조건으로 처리했다.src/renderer/height_cursor.rs: compact 미주 tail이 이전 줄보다 위로 되감기지 않도록 하고, tall inline tail 뒤 텍스트와 equation-only tail의 하단 fit 허용치를 공통 보정했다.src/main.rs: render tree bbox를 JSON으로 뽑는 보조 CLI를 추가해 sweep이 수식/텍스트 겹침을 픽셀 비교뿐 아니라 layout bbox 기준으로도 잡을 수 있게 했다.scripts/task1274_visual_sweep.py: 6종 HWP/PDF를 페이지별 SVG/PNG/PDF PNG/비교 PNG/render tree JSON으로 생성하고, frame overflow, red marker drift, line band drift, equation/text overlap, line order overlap 후보를 수집한다.tests/issue_1139_inline_picture_duplicate.rs: 문20, 문26, 문30, 2024 미주사이20, 2022 11월 실전 흐름을 회귀 테스트로 추가했다.시각/자동 검증 결과
python3 scripts/task1274_visual_sweep.py --target allline_order_overlap_pages=[]로 문20 계열 수식/텍스트 역전 후보가 사라진 것을 확인.3-10월_교육_통합_2022.hwp는frame=[],order=[]로 확인.output/task1274/pr_1277_closed_body_preview.html은 닫힌 PR 본문 임시 미리보기용 산출물이며 PR에는 포함하지 않는다.pkg/산출물은 건드리지 않았다. WASM은 별도 임시 fresh worktree에서wasm-pack build --target web --release --out-dir pkg로 검증했다.CI 검증
cargo fmt --all -- --checkcargo build --verbosecargo check --target wasm32-unknown-unknown --libcargo test --features native-skia skia --lib --verbosecargo test --verbosecargo clippy -- -D warningswasm-pack build --target web --release --out-dir pkgfresh worktree 검증cargo test --test issue_1139_inline_picture_duplicate -- --nocapturepython3 scripts/task1274_visual_sweep.py --target allCloses #1274