레이아웃 동작 원리
내지 추가 시 콘텐츠가 페이지에 어떻게 배치되는지, breakBefore 파라미터로 배치를 어떻게 제어하는지 설명합니다.
페이지 배치 기본 원리
내지 API(POST /books/{bookUid}/contents)를 호출할 때마다 콘텐츠가 순서대로 배치됩니다. 각 콘텐츠의 배치 위치는 breakBefore 쿼리 파라미터로 제어합니다.
breakBefore 옵션
| 값 | 동작 | 기본값 |
|---|---|---|
page | 항상 새로운 페이지에서 시작 | divider, publish 종류의 기본값 |
column | 현재 페이지에 여유 컬럼이 있으면 그 컬럼에 배치, 없으면 다음 페이지 | — |
none | 이전 콘텐츠 바로 다음에 연속 배치 | content 종류의 기본값 |
내지 추가 응답 — 배치 결과
{
"success": true,
"message": "Content created successfully",
"data": {
"result": "inserted",
"breakBefore": "page",
"pageNum": 1,
"pageSide": "right",
"pageCount": 0
}
}페이지 구성
책의 각 페이지는 왼쪽(left)과 오른쪽(right) 면으로 구성됩니다. 내지 추가 응답의 pageSide 필드로 콘텐츠가 어느 면에 배치되었는지 확인할 수 있습니다.
응답 필드
| 필드 | 타입 | 설명 |
|---|---|---|
pageNum | int | 콘텐츠가 배치된 페이지 번호 |
pageSide | string | left 또는 right |
pageCount | int | 현재까지 총 페이지 수 |
컬럼 레이아웃
일부 템플릿은 한 페이지 안에 여러 컬럼을 가질 수 있습니다. breakBefore=column을 사용하면 같은 페이지 내에서 다음 컬럼으로 이동하여 배치합니다. 모든 컬럼이 사용된 경우 다음 페이지로 넘어갑니다.
사용 예시
2컬럼 템플릿에서 첫 번째 콘텐츠는 왼쪽 컬럼에, 두 번째 콘텐츠는 breakBefore=column으로 오른쪽 컬럼에 배치할 수 있습니다.
판형별 시작 위치
판형에 따라 첫 내지 페이지의 시작 위치가 다를 수 있습니다. 예를 들어 SQUAREBOOK_HC는 첫 내지 페이지가 오른쪽(right)부터 시작합니다.
내지 추가 응답의 pageSide 값으로 실제 배치 결과를 확인하세요.