feat(docs-i18n): translate all documentation into 20 languages

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.
This commit is contained in:
SnapOtter
2026-07-11 13:52:47 +08:00
committed by GitHub
parent 00b651c9f8
commit 4963ab3bbd
3620 changed files with 306134 additions and 0 deletions
+48
View File
@@ -0,0 +1,48 @@
---
description: "Розташування сторінок PDF для складання в буклет."
i18n_source_hash: 8844b6d4fe96
i18n_provenance: human
i18n_output_hash: 43910394cf4b
---
# Буклет PDF {#booklet-pdf}
Спустіть сторінки для двостороннього друку, щоб надруковані аркуші можна було скласти в буклет.
## Кінцева точка API {#api-endpoint}
`POST /api/v1/tools/pdf/booklet-pdf`
Приймає багаточастинні дані форми із файлом PDF та полем JSON `settings`.
## Параметри {#parameters}
| Параметр | Тип | Обов’язковий | За замовчуванням | Опис |
|-----------|------|----------|---------|-------------|
| perSheet | integer | Ні | `2` | Сторінок на аркуш: `2`, `4`, `6` або `8` |
## Приклад запиту {#example-request}
```bash
curl -X POST http://localhost:1349/api/v1/tools/pdf/booklet-pdf \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@document.pdf" \
-F 'settings={"perSheet": 2}'
```
## Приклад відповіді {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/document.pdf",
"originalSize": 2450000,
"processedSize": 2400000
}
```
## Примітки {#notes}
- Стандартне `perSheet: 2` розміщує дві сторінки поруч на кожному аркуші, що є стандартним компонуванням буклета для двостороннього друку.
- Порожні сторінки додаються автоматично, якщо загальна кількість сторінок не кратна розміру аркуша.
- Надрукуйте вивід двостороннім друком із зшиванням по короткому краю, потім складіть і скріпіть.
+62
View File
@@ -0,0 +1,62 @@
---
description: "Зменшення розміру файлу PDF шляхом стиснення вбудованих зображень."
i18n_source_hash: a8bb0baaca25
i18n_provenance: human
i18n_output_hash: 9493bdedff6d
---
# Compress PDF {#compress-pdf}
Зменшуйте розмір файлу PDF шляхом зниження роздільної здатності вбудованих зображень. Оберіть повзунок якості або цільовий розмір файлу.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/compress-pdf`
Приймає багаточастинні (multipart) дані форми з файлом PDF та полем JSON `settings`.
## Parameters {#parameters}
| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| mode | string | No | `"quality"` | Режим стиснення: `quality` або `targetSize` |
| quality | integer | No | `75` | Якість стиснення, 1-100 (вище = менше стиснення). Використовується в режимі `quality` |
| targetSizeKb | number | No | - | Цільовий розмір файлу в кілобайтах. Використовується в режимі `targetSize` |
## Example Request {#example-request}
Стиснення за якістю:
```bash
curl -X POST http://localhost:1349/api/v1/tools/pdf/compress-pdf \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@document.pdf" \
-F 'settings={"mode": "quality", "quality": 60}'
```
Стиснення до цільового розміру:
```bash
curl -X POST http://localhost:1349/api/v1/tools/pdf/compress-pdf \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@document.pdf" \
-F 'settings={"mode": "targetSize", "targetSizeKb": 500}'
```
## Example Response {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/document.pdf",
"originalSize": 5200000,
"processedSize": 1800000
}
```
## Notes {#notes}
- У режимі `quality` нижчі значення дають менші файли з більшою деградацією зображення.
- У режимі `targetSize` двійковий пошук знаходить найвищий DPI, який вкладається в запитаний розмір.
- Якщо стиснення збільшило б файл, повертаються вихідні байти без змін.
- Текст і векторний вміст не зазнають впливу; знижується роздільна здатність лише вбудованих растрових зображень.
+48
View File
@@ -0,0 +1,48 @@
---
description: "Обрізання всіх сторінок PDF з рівномірним полем."
i18n_source_hash: ffa1a2cee08d
i18n_provenance: human
i18n_output_hash: 441ee85292cb
---
# Crop PDF {#crop-pdf}
Обрізайте всі сторінки PDF, застосовуючи рівномірне поле, яке однаково обтинає вміст з кожного краю.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/crop-pdf`
Приймає багаточастинні (multipart) дані форми з файлом PDF та полем JSON `settings`.
## Parameters {#parameters}
| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| margin | number | No | `20` | Рівномірне поле обрізки в пунктах (0-2000) |
## Example Request {#example-request}
```bash
curl -X POST http://localhost:1349/api/v1/tools/pdf/crop-pdf \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@document.pdf" \
-F 'settings={"margin": 50}'
```
## 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": 2440000
}
```
## Notes {#notes}
- Значення поля вказується в пунктах PDF (1 пункт = 1/72 дюйма).
- Однакове поле застосовується до всіх чотирьох країв кожної сторінки.
- Поле `0` видаляє всі наявні поля обрізки, показуючи повний медіабокс.
+47
View File
@@ -0,0 +1,47 @@
---
description: "Витягання вибраних сторінок з PDF у новий документ."
i18n_source_hash: e4a8fad31e0f
i18n_provenance: human
i18n_output_hash: 765f61375149
---
# Extract Pages {#extract-pages}
Витягайте вибрані сторінки з PDF у новий, менший документ.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/extract-pages`
Приймає багаточастинні (multipart) дані форми з файлом PDF та полем JSON `settings`.
## Parameters {#parameters}
| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| range | string | Yes | - | Діапазон сторінок у синтаксисі qpdf, наприклад `"1-5,8,10-z"` |
## Example Request {#example-request}
```bash
curl -X POST http://localhost:1349/api/v1/tools/pdf/extract-pages \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@document.pdf" \
-F 'settings={"range": "1-5,8,10-z"}'
```
## Example Response {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/document.pdf",
"originalSize": 3200000,
"processedSize": 1100000
}
```
## Notes {#notes}
- Діапазони сторінок використовують синтаксис qpdf: `1-5` для сторінок з 1 по 5, `z` для останньої сторінки, а коми поєднують діапазони (наприклад `1-3,7,10-z`).
- Витягнуті сторінки зберігають своє початкове форматування, анотації та посилання.
+46
View File
@@ -0,0 +1,46 @@
---
description: "Запікання форм та анотацій у вміст сторінки."
i18n_source_hash: b25c2a2b6f40
i18n_provenance: human
i18n_output_hash: 001fa97bae11
---
# Flatten PDF {#flatten-pdf}
Запікайте інтерактивні поля форм та анотації у вміст сторінки, отримуючи статичний PDF, який виглядає однаково всюди.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/flatten-pdf`
Приймає багаточастинні (multipart) дані форми з файлом PDF.
## Parameters {#parameters}
Цей інструмент не має налаштовуваних параметрів. Завантажте PDF, і всі форми та анотації буде запечено.
## Example Request {#example-request}
```bash
curl -X POST http://localhost:1349/api/v1/tools/pdf/flatten-pdf \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@form.pdf"
```
## Example Response {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/form.pdf",
"originalSize": 185000,
"processedSize": 172000
}
```
## Notes {#notes}
- Прийнятний формат вхідних даних: `.pdf`.
- Це швидкий (синхронний) інструмент, який повертає результат напряму.
- Значення полів форми зберігаються як статичний текст у вихідному файлі.
- Анотації (коментарі, виділення, нотатки) стають частиною вмісту сторінки, і їх більше не можна редагувати.
+44
View File
@@ -0,0 +1,44 @@
---
description: "Перетворення всіх кольорів у PDF на відтінки сірого."
i18n_source_hash: f327addb32d6
i18n_provenance: human
i18n_output_hash: cf42301b6a5b
---
# Grayscale PDF {#grayscale-pdf}
Перетворюйте всі кольори в PDF на відтінки сірого, отримуючи чорно-білу версію документа.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/grayscale-pdf`
Приймає багаточастинні (multipart) дані форми з файлом PDF. Поле `settings` не потрібне.
## Parameters {#parameters}
Цей інструмент не має параметрів налаштувань. Завантажте файл PDF напряму.
## Example Request {#example-request}
```bash
curl -X POST http://localhost:1349/api/v1/tools/pdf/grayscale-pdf \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@document.pdf"
```
## Example Response {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/document.pdf",
"originalSize": 3200000,
"processedSize": 2800000
}
```
## Notes {#notes}
- Усі колірні простори (RGB, CMYK) перетворюються на відтінки сірого, включно з вбудованими зображеннями, векторною графікою та текстом.
- Вихідний файл часто менший за оригінал, оскільки дані у відтінках сірого потребують менше байтів на піксель.
+45
View File
@@ -0,0 +1,45 @@
---
description: "Лінеаризація PDF для швидкого перегляду в мережі (прогресивне завантаження)."
i18n_source_hash: 36280b478161
i18n_provenance: human
i18n_output_hash: 5fc1603484f1
---
# Web-Optimize PDF {#web-optimize-pdf}
Лінеаризуйте PDF, щоб його можна було прогресивно завантажувати та відображати у веббраузерах, не чекаючи повного файлу.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/linearize-pdf`
Приймає багаточастинні (multipart) дані форми з файлом PDF. Поле `settings` не потрібне.
## Parameters {#parameters}
Цей інструмент не має параметрів налаштувань. Завантажте файл PDF напряму.
## Example Request {#example-request}
```bash
curl -X POST http://localhost:1349/api/v1/tools/pdf/linearize-pdf \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@document.pdf"
```
## 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": 2460000
}
```
## Notes {#notes}
- Лінеаризація переупорядковує внутрішню структуру PDF, щоб перша сторінка могла відобразитися до завершення завантаження всього файлу.
- Вихідний файл може бути дещо більшим за вхідний через додані дані лінеаризації.
- Уже лінеаризовані PDF повторно лінеаризуються без проблем.
+53
View File
@@ -0,0 +1,53 @@
---
description: "Об'єднання кількох PDF в один документ."
i18n_source_hash: e82e389cb8b6
i18n_provenance: human
i18n_output_hash: 99ec6a975387
---
# Merge PDFs {#merge-pdfs}
Об'єднуйте два або більше файлів PDF в один документ, зберігаючи порядок сторінок кожного вхідного файлу.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/merge-pdf`
Приймає багаточастинні (multipart) дані форми з двома або більше файлами PDF. Поле `settings` не потрібне.
## Parameters {#parameters}
Цей інструмент не має параметрів налаштувань. Просто завантажте два або більше файлів PDF.
| Constraint | Value |
|------------|-------|
| Minimum files | 2 |
| Maximum files | 20 |
## Example Request {#example-request}
```bash
curl -X POST http://localhost:1349/api/v1/tools/pdf/merge-pdf \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@document1.pdf" \
-F "file=@document2.pdf" \
-F "file=@document3.pdf"
```
## Example Response {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/merged.pdf",
"originalSize": 4500000,
"processedSize": 4200000
}
```
## Notes {#notes}
- Файли об'єднуються в тому порядку, в якому їх завантажено.
- Потрібно щонайменше два файли PDF; запит завершиться помилкою 400, якщо надано менше.
- Максимальна кількість вхідних файлів становить 20.
- Зашифровані PDF потрібно розблокувати перед об'єднанням.
+48
View File
@@ -0,0 +1,48 @@
---
description: "Розміщення кількох сторінок PDF на аркуші (2-up, 4-up тощо)."
i18n_source_hash: 9dd82737cb72
i18n_provenance: human
i18n_output_hash: e73fe9651fd8
---
# N-up PDF {#n-up-pdf}
Розміщуйте кілька сторінок на аркуші, щоб заощадити папір під час друку, наприклад у розкладках 2-up або 4-up.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/nup-pdf`
Приймає багаточастинні (multipart) дані форми з файлом PDF та полем JSON `settings`.
## Parameters {#parameters}
| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| perSheet | integer | No | `2` | Сторінок на аркуш: `2`, `3`, `4`, `8`, `9`, `12` або `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}
- Сторінки розміщуються в порядку читання (зліва направо, зверху вниз).
- Розмір вихідної сторінки відповідає оригіналу; окремі сторінки масштабуються, щоб вкластися в сітку.
- 20-сторінковий документ з `perSheet: 4` дає 5-сторінковий результат.
+53
View File
@@ -0,0 +1,53 @@
---
description: "Витягання тексту з документів PDF за допомогою OCR на основі ШІ."
i18n_source_hash: 1431fcba180b
i18n_provenance: human
i18n_output_hash: b0bc3d72aed6
---
# PDF OCR {#pdf-ocr}
Витягайте текст з документів PDF за допомогою оптичного розпізнавання символів на основі ШІ. Підтримує кілька рівнів якості та мов. Потребує встановлення набору функцій OCR.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/ocr-pdf`
Приймає багаточастинні (multipart) дані форми з файлом PDF та необов'язковим полем JSON `settings`.
## Parameters {#parameters}
| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| quality | string | No | `"balanced"` | Рівень якості OCR: `fast`, `balanced`, `best` |
| language | string | No | `"auto"` | Мова документа: `auto`, `en`, `de`, `fr`, `es`, `zh`, `ja`, `ko` |
| pages | string | No | `"all"` | Вибір сторінок, наприклад `"all"`, `"1-3"`, `"1,3,5"` |
## Example Request {#example-request}
```bash
curl -X POST http://localhost:1349/api/v1/tools/pdf/ocr-pdf \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@scanned.pdf" \
-F 'settings={"quality": "best", "language": "en", "pages": "1-5"}'
```
## Example Response {#example-response}
Повертає `202 Accepted`. Відстежуйте перебіг через SSE за адресою `/api/v1/jobs/{jobId}/progress`.
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"async": true
}
```
## Notes {#notes}
- Прийнятний формат вхідних даних: `.pdf`.
- Це інструмент на основі ШІ, який потребує встановлення **набору функцій OCR**. Якщо набір не встановлено, API повертає `501 Not Implemented`.
- Рівень якості `fast` використовує легшу модель для швидшого опрацювання; `best` використовує точнішу модель за рахунок швидкості.
- Налаштування мови `auto` намагається визначити мову документа автоматично.
- Ви можете націлюватися на конкретні сторінки за допомогою діапазонів (`"1-3"`), списків через кому (`"1,3,5"`) або `"all"` для кожної сторінки.
- Для PDF, які вже містять текст із можливістю виділення, розгляньте використання швидшого інструмента [PDF to Text](./pdf-to-text).
+48
View File
@@ -0,0 +1,48 @@
---
description: "Перевпорядкування сторінок у PDF з явним порядком сторінок."
i18n_source_hash: e961fc895b4b
i18n_provenance: human
i18n_output_hash: e114c27d621e
---
# Organize PDF {#organize-pdf}
Перевпорядковуйте сторінки в PDF, вказавши бажану послідовність сторінок.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/organize-pdf`
Приймає багаточастинні (multipart) дані форми з файлом PDF та полем JSON `settings`.
## Parameters {#parameters}
| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| order | string | Yes | - | Бажаний порядок сторінок у синтаксисі qpdf, наприклад `"3,1,2,5-z"` |
## Example Request {#example-request}
```bash
curl -X POST http://localhost:1349/api/v1/tools/pdf/organize-pdf \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@document.pdf" \
-F 'settings={"order": "3,1,2,5-z"}'
```
## 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": 2450000
}
```
## Notes {#notes}
- Діапазони сторінок використовують синтаксис qpdf: `3,1,2` перевпорядковує перші три сторінки, а `5-z` додає сторінки з 5 по останню.
- Сторінки можна дублювати, перелічивши їх кілька разів (наприклад `"1,1,2,3"` дублює сторінку 1).
- Сторінки, не перелічені в рядку порядку, пропускаються у вихідному файлі.
+61
View File
@@ -0,0 +1,61 @@
---
description: "Читання та запис метаданих документа PDF."
i18n_source_hash: b2eaebf7467f
i18n_provenance: human
i18n_output_hash: c242dd695772
---
# PDF Metadata {#pdf-metadata}
Читайте та оновлюйте поля метаданих документа PDF, такі як заголовок, автор, тема та ключові слова. Коли налаштування не надано, наявні метадані повертаються без змін.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/pdf-metadata`
Приймає багаточастинні (multipart) дані форми з файлом PDF та необов'язковим полем JSON `settings`.
## Parameters {#parameters}
| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| title | string | No | - | Заголовок документа (макс. 500 символів) |
| author | string | No | - | Автор документа (макс. 500 символів) |
| subject | string | No | - | Тема документа (макс. 500 символів) |
| keywords | string | No | - | Ключові слова документа (макс. 500 символів) |
Усі параметри необов'язкові. Пропущені поля залишаються без змін.
## Example Request {#example-request}
```bash
curl -X POST http://localhost:1349/api/v1/tools/pdf/pdf-metadata \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@report.pdf" \
-F 'settings={"title": "Q2 Report", "author": "Finance Team"}'
```
## Example Response {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/report.pdf",
"originalSize": 245000,
"processedSize": 245200,
"metadata": {
"title": "Q2 Report",
"author": "Finance Team",
"subject": "",
"keywords": ""
}
}
```
## Notes {#notes}
- Прийнятний формат вхідних даних: `.pdf`.
- Це швидкий (синхронний) інструмент, який повертає результат напряму.
- Поле `metadata` у відповіді містить підсумкові метадані після будь-яких оновлень.
- Щоб прочитати метадані без їх зміни, пропустіть поле `settings` або надішліть порожній об'єкт.
- Кожне поле метаданих обмежене 500 символами.
@@ -0,0 +1,54 @@
---
description: "Додавання номерів сторінок на кожну сторінку PDF."
i18n_source_hash: 58342d6ac8d2
i18n_provenance: human
i18n_output_hash: 6e8b122c6dc2
---
# PDF Page Numbers {#pdf-page-numbers}
Додавайте номери сторінок у форматі «Page N of M» на кожну сторінку PDF.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/pdf-page-numbers`
Приймає багаточастинні (multipart) дані форми з файлом PDF та полем JSON `settings`.
## Parameters {#parameters}
| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| position | string | No | `"bc"` | Розміщення номера сторінки: `bl`, `bc`, `br`, `tl`, `tc`, `tr` |
| fontSize | integer | No | `10` | Розмір шрифту в пунктах (6-24) |
### Position Values {#position-values}
- `tl` угорі ліворуч, `tc` угорі по центру, `tr` угорі праворуч
- `bl` внизу ліворуч, `bc` внизу по центру, `br` внизу праворуч
## Example Request {#example-request}
```bash
curl -X POST http://localhost:1349/api/v1/tools/pdf/pdf-page-numbers \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@document.pdf" \
-F 'settings={"position": "bc", "fontSize": 12}'
```
## 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": 2470000
}
```
## Notes {#notes}
- Номери сторінок відображаються у форматі «Page 1 of 10».
- Номери додаються на кожну сторінку, включно з будь-якими наявними титульними або обкладинковими сторінками.
- Позиція за замовчуванням `"bc"` розміщує номери внизу по центру кожної сторінки.
+133
View File
@@ -0,0 +1,133 @@
---
description: "Перетворення сторінок PDF на високоякісні зображення."
i18n_source_hash: 1c36be5dadb8
i18n_provenance: human
i18n_output_hash: a2729bd3633c
---
# PDF to Image {#pdf-to-image}
Перетворюйте сторінки PDF на високоякісні растрові зображення. Підтримує вибір сторінок, кілька вихідних форматів, керування DPI та колірні режими. Включає підмаршрути info та preview для перевірки PDF перед перетворенням.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/pdf-to-image`
## Parameters {#parameters}
| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| format | string | No | `"png"` | Вихідний формат: `png`, `jpg`, `webp`, `avif`, `tiff`, `gif`, `heic`, `heif`, `jxl` |
| dpi | number | No | 150 | Роздільна здатність рендерингу (від 36 до 2400). Вищий DPI дає більші, детальніші зображення. |
| quality | number | No | 85 | Якість виводу для форматів із втратами (від 1 до 100) |
| colorMode | string | No | `"color"` | Колірний режим: `color`, `grayscale`, `bw` (чорно-білий поріг) |
| pages | string | No | `"all"` | Вибір сторінок: `all`, одна сторінка (`3`), діапазон (`1-5`) або через кому (`1,3,5-8`) |
## Example Request {#example-request}
```bash
curl -X POST http://localhost:1349/api/v1/tools/pdf/pdf-to-image \
-F "file=@document.pdf" \
-F 'settings={"format":"png","dpi":300,"pages":"1-3","colorMode":"color"}'
```
## Example Response {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"pageCount": 10,
"selectedPages": [1, 2, 3],
"format": "png",
"pages": [
{
"page": 1,
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/page-1.png",
"size": 234567
},
{
"page": 2,
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/page-2.png",
"size": 198765
},
{
"page": 3,
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/page-3.png",
"size": 210456
}
],
"zipUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/pdf-pages.zip",
"zipSize": 612345
}
```
## Info Sub-Route {#info-sub-route}
`POST /api/v1/tools/pdf/pdf-to-image/info`
Повертає кількість сторінок PDF без рендерингу жодної сторінки.
### Info Request {#info-request}
```bash
curl -X POST http://localhost:1349/api/v1/tools/pdf/pdf-to-image/info \
-F "file=@document.pdf"
```
### Info Response {#info-response}
```json
{
"pageCount": 10
}
```
## Preview Sub-Route {#preview-sub-route}
`POST /api/v1/tools/pdf/pdf-to-image/preview`
Повертає ескізи всіх сторінок у низькій роздільній здатності у форматі JPEG як base64 data URL. Корисно для побудови інтерфейсу вибору сторінок.
### Preview Request {#preview-request}
```bash
curl -X POST http://localhost:1349/api/v1/tools/pdf/pdf-to-image/preview \
-F "file=@document.pdf"
```
### Preview Response {#preview-response}
```json
{
"pageCount": 10,
"thumbnails": [
{
"page": 1,
"dataUrl": "data:image/jpeg;base64,/9j/4AAQ...",
"width": 300,
"height": 424
},
{
"page": 2,
"dataUrl": "data:image/jpeg;base64,/9j/4AAQ...",
"width": 300,
"height": 424
}
]
}
```
## Notes {#notes}
- Використовує MuPDF для рендерингу PDF, забезпечуючи високоточний вивід із коректним рендерингом шрифтів та векторної графіки.
- PDF, захищені паролем, не підтримуються та повертатимуть помилку 400.
- Параметр `pages` підтримує гнучкий синтаксис:
- `"all"` або `""` - усі сторінки
- `"3"` - одна сторінка
- `"1-5"` - діапазон сторінок (включно)
- `"1,3,5-8"` - змішані окремі сторінки та діапазони
- Номери сторінок починаються з 1. Указання сторінок за межами довжини документа повертає помилку 400.
- Основна кінцева точка завжди генерує як завантаження окремих сторінок, так і ZIP, що містить усі вибрані сторінки.
- Кінцева точка preview рендерить при 72 DPI та масштабує до ширини 300px для швидкої генерації ескізів. Ескізи мають формат JPEG з якістю 60%.
- Кінцева точка preview враховує конфігурацію сервера `MAX_PDF_PAGES`, обмежуючи кількість згенерованих ескізів.
- Для великих документів у високому DPI час опрацювання зростає пропорційно. Розгляньте використання нижчого DPI (150) для вебу та вищого DPI (300-600) для друку.
+47
View File
@@ -0,0 +1,47 @@
---
description: "Витягання простого тексту з PDF."
i18n_source_hash: 15a7bc1cdf8f
i18n_provenance: human
i18n_output_hash: e4df6199638b
---
# PDF to Text {#pdf-to-text}
Витягайте весь читабельний простий текст із документа PDF у текстовий файл.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/pdf-to-text`
Приймає багаточастинні (multipart) дані форми з файлом PDF.
## Parameters {#parameters}
Цей інструмент не має налаштовуваних параметрів. Завантажте PDF, і його текстовий вміст буде витягнуто.
## Example Request {#example-request}
```bash
curl -X POST http://localhost:1349/api/v1/tools/pdf/pdf-to-text \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@report.pdf"
```
## Example Response {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/report.txt",
"originalSize": 520000,
"processedSize": 14300,
"chars": 14300
}
```
## Notes {#notes}
- Прийнятний формат вхідних даних: `.pdf`.
- Це швидкий (синхронний) інструмент, який повертає результат напряму.
- Поле `chars` у відповіді вказує кількість витягнутих символів.
- Витягається лише цифровий вбудований текст. Для сканованих документів або PDF на основі зображень використовуйте натомість інструмент [PDF OCR](./ocr-pdf).
+46
View File
@@ -0,0 +1,46 @@
---
description: "Перетворення PDF на документ Word (DOCX)."
i18n_source_hash: be41b6b49f84
i18n_provenance: human
i18n_output_hash: 0abab82913d2
---
# PDF to Word {#pdf-to-word}
Перетворюйте текстовий PDF на документ Word (DOCX). Найкраще підходить для PDF із текстом, що виділяється; скановані сторінки спочатку потребують OCR.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/pdf-to-word`
Приймає багаточастинні (multipart) дані форми з файлом PDF.
## Parameters {#parameters}
Цей інструмент не має налаштовуваних параметрів. Завантажте PDF, і його буде перетворено на DOCX.
## Example Request {#example-request}
```bash
curl -X POST http://localhost:1349/api/v1/tools/pdf/pdf-to-word \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@report.pdf"
```
## Example Response {#example-response}
Повертає `202 Accepted`. Відстежуйте перебіг через SSE за адресою `/api/v1/jobs/{jobId}/progress`.
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"async": true
}
```
## Notes {#notes}
- Прийнятний формат вхідних даних: `.pdf`.
- Найкраще працює з текстовими PDF. Скановані сторінки або сторінки лише із зображень дадуть порожній чи мінімальний результат; використовуйте [PDF OCR](./ocr-pdf), щоб спочатку додати текстовий шар.
- Перетворення виконується LibreOffice, що працює у безголовому (headless) режимі на сервері.
- Складні розкладки (багатоколонкові, елементи, що перекриваються) можуть перетворитися неідеально.
+45
View File
@@ -0,0 +1,45 @@
---
description: "Перетворення PDF на архівний формат PDF/A-2 для тривалого зберігання."
i18n_source_hash: 4c6bf7a12e84
i18n_provenance: human
i18n_output_hash: 8d349af0ad83
---
# PDF/A Convert {#pdf-a-convert}
Перетворюйте PDF на архівний формат PDF/A-2, придатний для тривалого зберігання та відповідності нормативним вимогам.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/pdfa-convert`
Приймає багаточастинні (multipart) дані форми з файлом PDF. Поле `settings` не потрібне.
## Parameters {#parameters}
Цей інструмент не має параметрів налаштувань. Завантажте файл PDF напряму.
## Example Request {#example-request}
```bash
curl -X POST http://localhost:1349/api/v1/tools/pdf/pdfa-convert \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@document.pdf"
```
## 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": 2600000
}
```
## Notes {#notes}
- Вихідний файл відповідає стандарту PDF/A-2.
- PDF/A вбудовує всі шрифти та забороняє зовнішні посилання, тому вихідний файл може бути більшим за оригінал.
- Шифрування та JavaScript видаляються під час перетворення, оскільки вони не дозволені стандартом PDF/A.
+50
View File
@@ -0,0 +1,50 @@
---
description: "Додавання парольного захисту з шифруванням AES-256 до PDF."
i18n_source_hash: 869cfbc739ef
i18n_provenance: human
i18n_output_hash: 734c22101670
---
# Protect PDF {#protect-pdf}
Додавайте парольний захист до PDF за допомогою шифрування AES-256.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/protect-pdf`
Приймає багаточастинні (multipart) дані форми з файлом PDF та полем JSON `settings`.
## Parameters {#parameters}
| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| userPassword | string | Yes | - | Пароль, необхідний для відкриття PDF (1-256 символів) |
| ownerPassword | string | No | Той самий, що й `userPassword` | Пароль власника для дозволів (1-256 символів) |
## Example Request {#example-request}
```bash
curl -X POST http://localhost:1349/api/v1/tools/pdf/protect-pdf \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@document.pdf" \
-F 'settings={"userPassword": "s3cret", "ownerPassword": "0wn3r"}'
```
## 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": 2500000
}
```
## Notes {#notes}
- Шифрування використовує AES-256.
- Якщо `ownerPassword` пропущено, він за замовчуванням дорівнює тому самому значенню, що й `userPassword`.
- Паролі приховуються в журналах аудиту.
- Зашифрований PDF вимагає пароля користувача для відкриття та пароля власника (якщо він відрізняється) для повних дозволів.
+52
View File
@@ -0,0 +1,52 @@
---
description: "Остаточне видалення входжень тексту з PDF (перевірене справжнє редагування)."
i18n_source_hash: 296ad2a701b2
i18n_provenance: human
i18n_output_hash: 6eafca085bc5
---
# Redact PDF {#redact-pdf}
Остаточно видаляйте вказані входження тексту з PDF за допомогою перевіреного справжнього редагування. Відредагований текст повністю видаляється з файлу, а не просто закривається чорним прямокутником.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/redact-pdf`
Приймає багаточастинні (multipart) дані форми з файлом PDF та полем JSON `settings`.
## Parameters {#parameters}
| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| terms | string[] | Yes | - | Текстові рядки для редагування (1-50 термінів, кожен до 200 символів) |
| caseSensitive | boolean | No | `false` | Чи враховується регістр під час зіставлення |
## Example Request {#example-request}
```bash
curl -X POST http://localhost:1349/api/v1/tools/pdf/redact-pdf \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@contract.pdf" \
-F 'settings={"terms": ["John Doe", "555-0123"], "caseSensitive": false}'
```
## Example Response {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/contract.pdf",
"originalSize": 245000,
"processedSize": 243000,
"found": 7
}
```
## Notes {#notes}
- Прийнятний формат вхідних даних: `.pdf`.
- Це швидкий (синхронний) інструмент, який повертає результат напряму.
- Виконується справжнє редагування: зіставлений текст видаляється з потоку вмісту PDF, а не просто візуально приховується.
- Поле `found` у відповіді вказує, скільки входжень було відредаговано.
- В одному запиті можна відредагувати до 50 термінів.
+47
View File
@@ -0,0 +1,47 @@
---
description: "Видалення конкретних сторінок з PDF."
i18n_source_hash: 003e460a047c
i18n_provenance: human
i18n_output_hash: 7115e2ab1265
---
# Remove Pages {#remove-pages}
Видаляйте конкретні сторінки з PDF, зберігаючи всі інші сторінки недоторканими.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/remove-pages`
Приймає багаточастинні (multipart) дані форми з файлом PDF та полем JSON `settings`.
## Parameters {#parameters}
| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| pages | string | Yes | - | Діапазон сторінок для видалення в синтаксисі qpdf, наприклад `"3,5-7"` |
## Example Request {#example-request}
```bash
curl -X POST http://localhost:1349/api/v1/tools/pdf/remove-pages \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@document.pdf" \
-F 'settings={"pages": "3,5-7"}'
```
## 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": 1800000
}
```
## Notes {#notes}
- Ви не можете видалити кожну сторінку з документа; має залишитися щонайменше одна сторінка.
- Діапазони сторінок використовують синтаксис qpdf: `3` для однієї сторінки, `5-7` для діапазону, а коми поєднують (наприклад `1,3,5-7`).
+45
View File
@@ -0,0 +1,45 @@
---
description: "Спроба відновити пошкоджений або зіпсований PDF."
i18n_source_hash: 864073a2f09f
i18n_provenance: human
i18n_output_hash: df502c8dfe78
---
# Repair PDF {#repair-pdf}
Спробуйте відновити пошкоджений або зіпсований PDF, реконструюючи його внутрішню структуру.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/repair-pdf`
Приймає багаточастинні (multipart) дані форми з файлом PDF. Поле `settings` не потрібне.
## Parameters {#parameters}
Цей інструмент не має параметрів налаштувань. Завантажте пошкоджений файл PDF напряму.
## Example Request {#example-request}
```bash
curl -X POST http://localhost:1349/api/v1/tools/pdf/repair-pdf \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@damaged.pdf"
```
## Example Response {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/damaged.pdf",
"originalSize": 2450000,
"processedSize": 2400000
}
```
## Notes {#notes}
- Структурна перевірка вхідних даних пропускається, щоб пропустити некоректні файли.
- Відновлення виконується за принципом найкращого зусилля; сильно пошкоджені файли можуть не відновитися повністю.
- Відновлений PDF може дещо відрізнятися за розміром від оригіналу через реконструйовані таблиці перехресних посилань.
+49
View File
@@ -0,0 +1,49 @@
---
description: "Обертання сторінок у PDF на 90, 180 або 270 градусів."
i18n_source_hash: cc2acd091427
i18n_provenance: human
i18n_output_hash: 4a0c3ff42584
---
# Rotate PDF {#rotate-pdf}
Обертайте всі або вибрані сторінки в PDF на вказаний кут.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/rotate-pdf`
Приймає багаточастинні (multipart) дані форми з файлом PDF та полем JSON `settings`.
## Parameters {#parameters}
| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| angle | integer | No | `90` | Кут обертання: `90`, `180` або `270` |
| range | string | No | `"1-z"` | Діапазон сторінок у синтаксисі qpdf, наприклад `"1-5,8"` (`"1-z"` = усі сторінки) |
## Example Request {#example-request}
```bash
curl -X POST http://localhost:1349/api/v1/tools/pdf/rotate-pdf \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@document.pdf" \
-F 'settings={"angle": 90, "range": "1-3"}'
```
## 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": 2450000
}
```
## Notes {#notes}
- Обертання виконується за годинниковою стрілкою.
- Діапазони сторінок використовують синтаксис qpdf: `1-5` для сторінок з 1 по 5, `z` для останньої сторінки, а коми поєднують діапазони.
- Діапазон за замовчуванням `"1-z"` обертає всі сторінки.
+79
View File
@@ -0,0 +1,79 @@
---
description: "Штампування завантажених зображень підписів на PDF за допомогою нормалізованих розміщень на сторінці."
i18n_source_hash: c28f78c2e7fd
i18n_provenance: human
i18n_output_hash: 5e1f1f1f28f6
---
# Sign PDF {#sign-pdf}
Штампуйте одне або кілька завантажених зображень підписів PNG на будь-яку сторінку PDF. Цей маршрут використовує власний багаточастинний (multipart) контракт, оскільки йому потрібні PDF, одне або кілька зображень підписів та координати розміщення.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/sign-pdf`
Приймає багаточастинні (multipart) дані форми. PDF надсилається як `file`; підписи надсилаються як `sig0`, `sig1` і так далі; розміщення надсилаються в полі JSON `placements`.
## Parameters {#parameters}
| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| file | file | Yes | - | Файл PDF для підписання |
| sig0 | file | Yes | - | Перше зображення підпису. Додаткові зображення використовують `sig1`, `sig2` і так далі |
| placements | JSON string | Yes | - | Масив об'єктів розміщення: `{ "sig": 0, "page": 0, "x": 0.2, "y": 0.7, "w": 0.25, "h": 0.08 }` |
| clientJobId | string | No | - | Необов'язковий UUID для відстеження перебігу через SSE |
| fileId | string | No | - | Необов'язковий ID бібліотеки файлів для збереження підписаного результату як нової версії |
## Placement Coordinates {#placement-coordinates}
| Field | Type | Description |
|-------|------|-------------|
| sig | integer | Індекс зображення підпису. `0` відображається на `sig0` |
| page | integer | Індекс сторінки PDF, що починається з нуля |
| x | number | Позиція зліва як частка сторінки |
| y | number | Позиція зверху як частка сторінки |
| w | number | Ширина підпису як частка сторінки |
| h | number | Висота підпису як частка сторінки |
Координати використовують початок відліку у верхньому лівому куті. Значення можуть дещо виходити за край сторінки; рендерер PDF обрізає підсумковий штамп до розміру сторінки.
## Example Request {#example-request}
```bash
curl -X POST http://localhost:1349/api/v1/tools/pdf/sign-pdf \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@contract.pdf" \
-F "sig0=@signature.png" \
-F 'placements=[{"sig":0,"page":0,"x":0.64,"y":0.82,"w":0.22,"h":0.08}]'
```
## Example Response {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/contract_signed.pdf",
"previewUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/preview.png",
"originalSize": 245000,
"processedSize": 249000
}
```
Якщо запит не може завершитися в межах синхронного вікна очікування, API повертає:
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"async": true
}
```
Підключіться до `/api/v1/jobs/<jobId>/progress` та завантажте результат, коли завдання завершиться.
## Notes {#notes}
- Прийнятний формат вхідного PDF: `.pdf`.
- Зображення підписів мають бути дійсними файлами зображень, зазвичай PNG з прозорістю.
- Приймається до 100 зображень підписів та 100 розміщень.
- `sign-pdf` є власним маршрутом і не використовує стандартне поле JSON `settings` інструмента.
+61
View File
@@ -0,0 +1,61 @@
---
description: "Витягання сторінок або розділення PDF на частини."
i18n_source_hash: 5c8d8041d219
i18n_provenance: human
i18n_output_hash: 27ef41b009c3
---
# Split PDF {#split-pdf}
Витягуйте діапазон сторінок у новий PDF або розділяйте документ на частини по N сторінок.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/split-pdf`
Приймає багаточастинні (multipart) дані форми з файлом PDF та полем JSON `settings`.
## Parameters {#parameters}
| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| mode | string | No | `"range"` | Режим розділення: `range` або `every` |
| range | string | Коли режим `range` | - | Діапазон сторінок у синтаксисі qpdf, наприклад `"1-5,8,10-z"` |
| everyN | integer | Коли режим `every` | - | Розділити на частини по N сторінок (1-500) |
## Example Request {#example-request}
Витягання конкретних сторінок:
```bash
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 сторінок:
```bash
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 {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/document.pdf",
"originalSize": 2450000,
"processedSize": 980000
}
```
## Notes {#notes}
- У режимі `range` повертається один PDF, що містить вибрані сторінки.
- У режимі `every` результатом є архів ZIP, що містить окремі частини.
- Діапазони сторінок використовують синтаксис qpdf: `1-5` для сторінок з 1 по 5, `z` для останньої сторінки, а коми поєднують діапазони (наприклад `1-3,7,10-z`).
+48
View File
@@ -0,0 +1,48 @@
---
description: "Видалення парольного захисту з PDF."
i18n_source_hash: 14f5165d185c
i18n_provenance: human
i18n_output_hash: 024ae10ec494
---
# Unlock PDF {#unlock-pdf}
Видаляйте парольний захист із зашифрованого PDF, надавши правильний пароль.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/unlock-pdf`
Приймає багаточастинні (multipart) дані форми з файлом PDF та полем JSON `settings`.
## Parameters {#parameters}
| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| password | string | Yes | - | Пароль для розшифрування PDF (1-256 символів) |
## Example Request {#example-request}
```bash
curl -X POST http://localhost:1349/api/v1/tools/pdf/unlock-pdf \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@document.pdf" \
-F 'settings={"password": "s3cret"}'
```
## Example Response {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/document.pdf",
"originalSize": 2500000,
"processedSize": 2450000
}
```
## Notes {#notes}
- Потрібно надати правильний пароль; неправильний пароль повертає помилку 400.
- Для розшифрування підійде або пароль користувача, або пароль власника.
- Паролі приховуються в журналах аудиту.
+58
View File
@@ -0,0 +1,58 @@
---
description: "Додавання текстового водяного знака на кожну сторінку PDF."
i18n_source_hash: f1f7d8912fbd
i18n_provenance: human
i18n_output_hash: ebff0ed3a697
---
# Watermark PDF {#watermark-pdf}
Штампуйте текстовий водяний знак на кожну сторінку PDF з налаштовуваними позицією, розміром, непрозорістю та обертанням.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/watermark-pdf`
Приймає багаточастинні (multipart) дані форми з файлом PDF та полем JSON `settings`.
## Parameters {#parameters}
| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| text | string | Yes | - | Текст водяного знака (1-200 символів) |
| position | string | No | `"c"` | Розміщення на сторінці: `tl`, `tc`, `tr`, `l`, `c`, `r`, `bl`, `bc`, `br` |
| fontSize | integer | No | `48` | Розмір шрифту в пунктах (6-72) |
| opacity | number | No | `0.3` | Непрозорість водяного знака (0.05-1) |
| rotation | number | No | `45` | Кут обертання в градусах (від -180 до 180) |
### Position Values {#position-values}
- `tl` угорі ліворуч, `tc` угорі по центру, `tr` угорі праворуч
- `l` по центру ліворуч, `c` по центру, `r` по центру праворуч
- `bl` внизу ліворуч, `bc` внизу по центру, `br` внизу праворуч
## Example Request {#example-request}
```bash
curl -X POST http://localhost:1349/api/v1/tools/pdf/watermark-pdf \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@document.pdf" \
-F 'settings={"text": "CONFIDENTIAL", "position": "c", "opacity": 0.2, "rotation": 45}'
```
## 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": 2500000
}
```
## Notes {#notes}
- Водяний знак відображається як текстове накладання на кожній сторінці.
- Той самий текст, позиція та стиль водяного знака застосовуються однаково до всіх сторінок.
- Використовуйте нижчі значення непрозорості (0.1-0.3) для ненав'язливих водяних знаків, які не приховують вміст.