mirror of
https://github.com/snapotter-hq/SnapOtter.git
synced 2026-08-03 07:46:42 +02:00
Renames 18 ambiguous or hard-to-search tool names so image tools self-qualify like the other modalities ("Compress" becomes "Compress Image"), and cleans up a few awkward names. Propagated across search (constants.ts), display (en.ts + 20 locales), the OpenAPI base spec + 20 locale specs, and the docs tool-page headings in 21 languages. Removes the duplicate "Normalize Audio" summary shared by the video and audio endpoints. Tool ids and routes are unchanged, so no API paths or bookmarks break.
46 lines
1.3 KiB
Markdown
46 lines
1.3 KiB
Markdown
---
|
|
description: Arrange multiple PDF pages per sheet (2-up, 4-up, etc.).
|
|
---
|
|
|
|
# Pages Per Sheet (N-up) {#n-up-pdf}
|
|
|
|
Arrange multiple pages per sheet to save paper when printing, such as 2-up or 4-up layouts.
|
|
|
|
## API Endpoint {#api-endpoint}
|
|
|
|
`POST /api/v1/tools/pdf/nup-pdf`
|
|
|
|
Accepts multipart form data with a PDF file and a JSON `settings` field.
|
|
|
|
## Parameters {#parameters}
|
|
|
|
| Parameter | Type | Required | Default | Description |
|
|
|-----------|------|----------|---------|-------------|
|
|
| perSheet | integer | No | `2` | Pages per sheet: `2`, `3`, `4`, `8`, `9`, `12`, or `16` |
|
|
|
|
## Example Request {#example-request}
|
|
|
|
```bash
|
|
curl -X POST http://localhost:1349/api/v1/tools/pdf/nup-pdf \
|
|
-H "Authorization: Bearer si_your-api-key" \
|
|
-F "file=@document.pdf" \
|
|
-F 'settings={"perSheet": 4}'
|
|
```
|
|
|
|
## Example Response {#example-response}
|
|
|
|
```json
|
|
{
|
|
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
|
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/document.pdf",
|
|
"originalSize": 2450000,
|
|
"processedSize": 2300000
|
|
}
|
|
```
|
|
|
|
## Notes {#notes}
|
|
|
|
- Pages are arranged in reading order (left to right, top to bottom).
|
|
- The output page size matches the original; individual pages are scaled down to fit the grid.
|
|
- A 20-page document with `perSheet: 4` produces a 5-page output.
|