Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 20 additions & 6 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,13 +9,27 @@
- 쪽 수 추정이 문서 끝 미주를 따른다. 미주는 본문 마지막 줄 바닥 아래에 미주 영역의 위 간격·구분선·아래 간격을 두고
줄마다 이어지며 쪽 끝을 넘어간다. 각주가 자리를 차지한 쪽 뒤에서는 다음 쪽에서 시작한다. 전에는 미주가 있으면 추정하지
않았다. 구역 끝 미주와 여러 단 구역 뒤 미주는 아직 추정하지 않는다.
- (실험) `hwpx.layout.line_cache.write_line_caches(doc)`가 본문의 글만 든 문단에 한/글이 저장할 때 쓰는 줄 배치 정보
- (실험) `hwpx.layout.line_cache.write_line_caches(doc)`가 글만 든 문단에 한/글이 저장할 때 쓰는 줄 배치 정보
(`hp:linesegarray`)를 쓴다. 줄 높이·글 높이·기준선·줄 간격은 한/글이 쓰는 값 그대로, 줄 시작·위치·폭은 쪽 수 추정이
놓는 대로이고, 탭에는 한/글이 배치한 폭을 쓴다. 글자 크기와 모양(글꼴·장평·자간)이 하나이고 개체·사용자 탭 정의가 없는 문단만(내어 쓰는 번호·글머리표는 된다), 단이 하나이고 글이 개체 옆으로 흐르지 않는 구역에서만 쓰고, 나머지 문단은 전처럼
한/글이 열 때 배치한다. 한/글은 줄이 어디서 나뉘는지도 배치 정보를 따르므로, 글자 폭 표에 없는 글자나 한 줄보다 긴 낱말이 든 문단도 쓰지 않는다. 이미 배치 정보가 있는 문단은 그대로 두고, 쪽 수 추정이 문서를 따르지 못하면 아무것도 쓰지 않는다.
놓는 대로이고, 탭에는 한/글이 배치한 폭을 쓴다. 개체·사용자 탭 정의가 없는 문단만(run마다 글꼴·장평·자간이 달라도 된다)(머리말·꼬리말·쪽 번호처럼 줄에 자리를 차지하지 않는 컨트롤은 된다)(글자 크기가 섞이면 줄마다 가장 큰 글자의 높이로 쓴다)(내어 쓰는 번호·글머리표는 된다), 단이 하나이고 글이 개체 옆으로 흐르지 않는 구역에서만 쓰고, 나머지 문단은 전처럼
놓는 대로이고, 탭에는 한/글이 배치한 폭을 쓴다. 글자 모양(글꼴·장평·자간)이 하나이고 개체·사용자 탭 정의가 없는 문단만(글자 크기가 섞이면 줄마다 가장 큰 글자의 높이로 쓴다)(내어 쓰는 번호·글머리표는 된다), 단이 하나이고 글이 개체 옆으로 흐르지 않는 구역에서만 쓰고(그 구역 표의 칸도 칸 안 문단이 모두 그런 문단이면 쓰고, 글자처럼 놓인 표만 든 문단에는 표 높이의 한 줄을 쓰며 표의 `hp:sz` 높이도 행 높이의 합으로 쓴다), 나머지 문단은 전처럼
한/글이 열 때 배치한다. 이미 배치 정보가 있는 문단은 그대로 두고, 쪽 수 추정이 문서를 따르지 못하면 아무것도 쓰지 않는다.
놓는 대로이고, 탭에는 한/글이 배치한 폭을 쓴다.
- 쓰는 문단: 단이 하나이고 글이 개체 옆으로 흐르지 않는 구역의, 개체·사용자 탭 정의가 없는 문단. run마다 글꼴이
달라도 되고, 글자 크기가 섞이면 줄마다 가장 큰 글자의 높이로 쓴다. 내어 쓰는 번호·글머리표와 머리말·꼬리말·
쪽 번호처럼 줄에 자리를 차지하지 않는 컨트롤은 된다.
- 그 구역 표의 칸도 칸 안 문단이 모두 그런 문단이면 쓴다. 글자처럼 놓인 표만 든 문단에는 표 높이의 한 줄을 쓰고, 표의
`hp:sz` 높이도 행 높이의 합으로 쓴다. 표 위·아래 캡션은 그 줄 높이와 간격만큼 표의 줄에 더한다(옆 캡션은 더하지
않는다).
- 글자 크기보다 큰 빈 run으로 끝나는 문단은 마지막 줄의 글 높이도 그 크기로 쓴다. 기준선은 문단 모양의 세로 정렬대로
글꼴 기준이면 글 높이의 85 %, 위면 0, 가운데면 절반, 아래면 글 높이 그대로 쓴다.
- 한/글은 줄이 어디서 나뉘는지도 배치 정보를 따르므로, 줄 나눔이 덜 확실한 문단은 쓰지 않는다: 한컴오피스 2024
데스크톱에서 폭을 확인한 글꼴(함초롬·맑은 고딕·바탕·돋움·굴림·궁서·한컴 고딕·HY헤드라인M 등·휴먼·한양·HCI)이
아니거나, 굵은 글자가 한양 글꼴·HCI Hollyhock이거나(한/글은 한양 글꼴의 굵은 글자를 1/20 em 넓게 그린다),
장평 50~200 %·자간 −30~30 %·최소 공백 50 % 밖이거나, 최소 공백이나 자간이 있는 문단에 묶음 빈칸이 있거나, 한글 음절과
확인한 기호 밖의 글자가 든 문단, 쪽 컨트롤이 글자 뒤에 있는 문단, 글자 폭 표에 없는 글자나 한 줄보다 긴 낱말이 든
문단, 줄 폭을 100 HWPUNIT
좁히거나 넓히면 줄 나눔이 바뀌는 문단, 탭 앞 글이 탭 정지 위치에서 줄 처음이나 앞 탭 정지부터 센 글자 수 × 4
HWPUNIT(배치 단위, 많아야 100) 안쪽인 문단.
- 나머지 문단과 이미 배치 정보가 있는 문단은 그대로 두어 한/글이 열 때 배치한다. 쪽 수 추정이 문서를 따르지 못하면
아무것도 쓰지 않는다.
기본 저장은 바뀌지 않는다.
- 그림을 만들 때(`doc.add_picture`, `paragraph.add_picture`) 그림 효과와 테두리를 줄 수 있다.
- `brightness`(밝기)·`contrast`(대비): -100~100. `effect`: `REAL_PIC`(원래 그림)·`GRAY_SCALE`(회색조)·
Expand Down
Loading
Loading