Skip to content

estimate_pages: 폭이 다른 다단의 줄 배치·쪽 넘김 지원 #308

Description

@airmang

검사한 공개 main은 97670eb2462e106134633acd78a8097d96db0fdd입니다(Python 3.13.13, macOS). 아래 입력은 저장소에 포함되어 있습니다. 추가 참조 검증은 아직 실행하지 않았으며, 관찰 결과를 바탕으로 엔진 지원을 확대하기 위한 과제입니다. core에 외부 실행 환경 의존을 추가하는 제안은 아닙니다.

재현

tests/fixtures/hwpxlib_corpus/reader_writer__MultiColumn.hwpx를 hwpx.experimental.estimate_pages(path)에 전달하면 pages=None, unsupported=('section 0: columns of unequal width',)가 반환됩니다. 원본과 줄 캐시 제거 진단 복사본 모두 동일합니다.

uv run --extra test python - <<'PYCODE'
from hwpx.experimental import estimate_pages
print(estimate_pages("tests/fixtures/hwpxlib_corpus/reader_writer__MultiColumn.hwpx"))
PYCODE

처리 요청

참조 실행에서 단별 너비·간격·줄 위치 및 단/쪽 전환을 관찰해 현재 동일 폭 단만 따르는 로직을 확장해 주세요. 원본과 본문 편집본을 비교하고, 단마다 실제 너비로 줄을 나누는 캐시 없는 회귀검사를 추가하는 것이 완료 기준입니다. 관련 코드: src/hwpx/layout/pages.py의 _columns 및 다단 배치 로직. 현재 명시적 미지원이며 표 읽기나 저장 실패는 아닙니다.

검증 원칙

입력 SHA-256·산출물 해시를 기록하고, 페이지 렌더와 한컴 재저장 HWPX를 비교해 회귀 기준으로 남겨 주세요. 캐시가 있는 원본과 편집으로 캐시가 무효화된 경우를 구분하고, 검증 환경에 따라 결과가 다르면 별도 기준으로 기록해야 합니다. 미지원 이유를 제거하거나 파일이 열리는 것만으로 완료하지 않습니다.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions