mirror of
https://github.com/snapotter-hq/SnapOtter.git
synced 2026-08-03 07:46:42 +02:00
All 181 docs markdown files translated into 20 languages (apps/docs/<locale>/**). Companion to the i18n code PR; admin-merged because the file count exceeds GitHub's per-PR CI trigger limit. Validated by pnpm i18n:check (all surfaces, 0 stale/missing) and a clean all-locale docs build.
2.0 KiB
2.0 KiB
description, i18n_source_hash, i18n_provenance, i18n_output_hash
| description | i18n_source_hash | i18n_provenance | i18n_output_hash |
|---|---|---|---|
| 페이지를 추출하거나 PDF를 여러 부분으로 분할합니다. | 5c8d8041d219 | human | 73639f25fa10 |
Split PDF
페이지 범위를 새 PDF로 추출하거나, 문서를 N페이지 단위로 분할합니다.
API Endpoint
POST /api/v1/tools/pdf/split-pdf
PDF 파일과 JSON settings 필드가 포함된 multipart form data를 받습니다.
Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| mode | string | No | "range" |
분할 모드: range 또는 every |
| range | string | mode가 range일 때 |
- | qpdf 문법의 페이지 범위, 예: "1-5,8,10-z" |
| everyN | integer | mode가 every일 때 |
- | N페이지 단위로 분할(1-500) |
Example Request
특정 페이지 추출:
curl -X POST http://localhost:1349/api/v1/tools/pdf/split-pdf \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@document.pdf" \
-F 'settings={"mode": "range", "range": "1-5,8"}'
10페이지 단위로 분할:
curl -X POST http://localhost:1349/api/v1/tools/pdf/split-pdf \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@document.pdf" \
-F 'settings={"mode": "every", "everyN": 10}'
Example Response
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/document.pdf",
"originalSize": 2450000,
"processedSize": 980000
}
Notes
range모드에서는 선택한 페이지가 담긴 단일 PDF가 반환됩니다.every모드에서는 개별 부분들이 담긴 ZIP 아카이브가 결과로 반환됩니다.- 페이지 범위는 qpdf 문법을 사용합니다: 1페이지부터 5페이지까지는
1-5, 마지막 페이지는z, 그리고 쉼표로 범위를 결합합니다(예:1-3,7,10-z).