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: "Arrangera PDF-sidor för att vikas till ett häfte."
i18n_source_hash: 8844b6d4fe96
i18n_provenance: human
i18n_output_hash: 1efc429c5b11
---
# Häftes-PDF {#booklet-pdf}
Montera sidor för dubbelsidig utskrift så att de utskrivna arken kan vikas till ett häfte.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/booklet-pdf`
Tar emot multipart-formulärdata med en PDF-fil och ett JSON-fält `settings`.
## Parameters {#parameters}
| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| perSheet | integer | No | `2` | Sidor per ark: `2`, `4`, `6` eller `8` |
## Example Request {#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 {#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 {#notes}
- Standardvärdet `perSheet: 2` placerar två sidor sida vid sida på varje ark, vilket är standardlayouten för häften vid dubbelsidig utskrift.
- Tomma sidor läggs till automatiskt om det totala sidantalet inte är en multipel av arkstorleken.
- Skriv ut utdatan dubbelsidigt med bindning längs kortsidan, vik sedan och häfta.
+62
View File
@@ -0,0 +1,62 @@
---
description: "Krymp PDF-filstorleken genom att komprimera inbäddade bilder."
i18n_source_hash: a8bb0baaca25
i18n_provenance: human
i18n_output_hash: 59ac5b7a87b8
---
# Compress PDF {#compress-pdf}
Minska PDF-filstorleken genom att nedsampla inbäddade bilder. Välj mellan ett kvalitetsreglage eller en målfilstorlek.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/compress-pdf`
Tar emot multipart-formulärdata med en PDF-fil och ett JSON-fält `settings`.
## Parameters {#parameters}
| Parameter | Typ | Obligatorisk | Standard | Beskrivning |
|-----------|------|----------|---------|-------------|
| mode | string | Nej | `"quality"` | Komprimeringsläge: `quality` eller `targetSize` |
| quality | integer | Nej | `75` | Komprimeringskvalitet, 1-100 (högre = mindre komprimering). Används i läget `quality` |
| targetSizeKb | number | Nej | - | Målfilstorlek i kilobyte. Används i läget `targetSize` |
## Example Request {#example-request}
Komprimera efter kvalitet:
```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}'
```
Komprimera till en målstorlek:
```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}
- I läget `quality` ger lägre värden mindre filer med mer bildförsämring.
- I läget `targetSize` hittar en binärsökning den högsta DPI som får plats inom den begärda storleken.
- Om komprimeringen skulle förstora filen returneras originalbyten oförändrade.
- Text och vektorinnehåll påverkas inte; endast inbäddade rasterbilder nedsamplas.
+48
View File
@@ -0,0 +1,48 @@
---
description: "Beskär alla sidor i en PDF med en enhetlig marginal."
i18n_source_hash: ffa1a2cee08d
i18n_provenance: human
i18n_output_hash: b595238439ba
---
# Crop PDF {#crop-pdf}
Beskär alla sidor i en PDF genom att tillämpa en enhetlig marginal och trimma innehåll lika mycket från varje kant.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/crop-pdf`
Tar emot multipart-formulärdata med en PDF-fil och ett JSON-fält `settings`.
## Parameters {#parameters}
| Parameter | Typ | Obligatorisk | Standard | Beskrivning |
|-----------|------|----------|---------|-------------|
| margin | number | Nej | `20` | Enhetlig beskärningsmarginal i punkter (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}
- Marginalvärdet anges i PDF-punkter (1 punkt = 1/72 tum).
- Samma marginal tillämpas på alla fyra kanterna på varje sida.
- En marginal på `0` tar bort alla befintliga beskärningsmarginaler och visar hela mediarutan.
+47
View File
@@ -0,0 +1,47 @@
---
description: "Plocka ut valda sidor från en PDF till ett nytt dokument."
i18n_source_hash: e4a8fad31e0f
i18n_provenance: human
i18n_output_hash: 84346a8f2b31
---
# Extract Pages {#extract-pages}
Plocka ut valda sidor från en PDF till ett nytt, mindre dokument.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/extract-pages`
Tar emot multipart-formulärdata med en PDF-fil och ett JSON-fält `settings`.
## Parameters {#parameters}
| Parameter | Typ | Obligatorisk | Standard | Beskrivning |
|-----------|------|----------|---------|-------------|
| range | string | Ja | - | Sidintervall i qpdf-syntax, t.ex. `"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}
- Sidintervall använder qpdf-syntax: `1-5` för sidorna 1 till 5, `z` för den sista sidan, och kommatecken för att kombinera intervall (t.ex. `1-3,7,10-z`).
- De extraherade sidorna behåller sin ursprungliga formatering, sina anteckningar och länkar.
+46
View File
@@ -0,0 +1,46 @@
---
description: "Baka in formulär och anteckningar i sidinnehållet."
i18n_source_hash: b25c2a2b6f40
i18n_provenance: human
i18n_output_hash: 228f0a70b0e2
---
# Flatten PDF {#flatten-pdf}
Baka in interaktiva formulärfält och anteckningar i sidinnehållet, vilket skapar en statisk PDF som ser likadan ut överallt.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/flatten-pdf`
Tar emot multipart-formulärdata med en PDF-fil.
## Parameters {#parameters}
Detta verktyg har inga konfigurerbara parametrar. Ladda upp en PDF så plattas alla formulär och anteckningar ut.
## 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}
- Godkänt indataformat: `.pdf`.
- Detta är ett snabbt (synkront) verktyg som returnerar resultatet direkt.
- Formulärfältens värden bevaras som statisk text i utdata.
- Anteckningar (kommentarer, markeringar, klisterlappar) blir en del av sidinnehållet och kan inte längre redigeras.
+44
View File
@@ -0,0 +1,44 @@
---
description: "Konvertera alla färger i en PDF till gråskala."
i18n_source_hash: f327addb32d6
i18n_provenance: human
i18n_output_hash: 76bace77335e
---
# Grayscale PDF {#grayscale-pdf}
Konvertera alla färger i en PDF till gråskala och skapa en svartvit version av dokumentet.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/grayscale-pdf`
Tar emot multipart-formulärdata med en PDF-fil. Inget fält `settings` krävs.
## Parameters {#parameters}
Detta verktyg har inga inställningsparametrar. Ladda upp PDF-filen direkt.
## 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}
- Alla färgrymder (RGB, CMYK) konverteras till gråskala, inklusive inbäddade bilder, vektorgrafik och text.
- Utdatafilen är ofta mindre än originalet eftersom gråskaledata kräver färre byte per pixel.
+45
View File
@@ -0,0 +1,45 @@
---
description: "Linjärisera en PDF för snabb webbvisning (progressiv nedladdning)."
i18n_source_hash: 36280b478161
i18n_provenance: human
i18n_output_hash: e7c30823278f
---
# Web-Optimize PDF {#web-optimize-pdf}
Linjärisera en PDF så att den kan laddas ner och visas progressivt i webbläsare utan att vänta på hela filen.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/linearize-pdf`
Tar emot multipart-formulärdata med en PDF-fil. Inget fält `settings` krävs.
## Parameters {#parameters}
Detta verktyg har inga inställningsparametrar. Ladda upp PDF-filen direkt.
## 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}
- Linjärisering ordnar om PDF-filens interna struktur så att den första sidan kan renderas innan hela filen har laddats ner.
- Utdatafilen kan bli något större än indatafilen på grund av den tillagda linjäriseringsdatan.
- Redan linjäriserade PDF-filer linjäriseras om utan problem.
+53
View File
@@ -0,0 +1,53 @@
---
description: "Kombinera flera PDF-filer till ett enda dokument."
i18n_source_hash: e82e389cb8b6
i18n_provenance: human
i18n_output_hash: e1166877da2f
---
# Merge PDFs {#merge-pdfs}
Kombinera två eller fler PDF-filer till ett enda dokument och bevara sidordningen i varje indatafil.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/merge-pdf`
Tar emot multipart-formulärdata med två eller fler PDF-filer. Inget fält `settings` krävs.
## Parameters {#parameters}
Detta verktyg har inga inställningsparametrar. Ladda helt enkelt upp två eller fler PDF-filer.
| Begränsning | Värde |
|------------|-------|
| Minsta antal filer | 2 |
| Högsta antal filer | 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}
- Filerna slås samman i den ordning de laddas upp.
- Minst två PDF-filer krävs; begäran misslyckas med ett 400-fel om färre anges.
- Det högsta antalet indatafiler är 20.
- Krypterade PDF-filer måste låsas upp innan de slås samman.
+48
View File
@@ -0,0 +1,48 @@
---
description: "Placera flera PDF-sidor per ark (2-up, 4-up osv.)."
i18n_source_hash: 9dd82737cb72
i18n_provenance: human
i18n_output_hash: 454082da0433
---
# N-up PDF {#n-up-pdf}
Placera flera sidor per ark för att spara papper vid utskrift, till exempel 2-up- eller 4-up-layouter.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/nup-pdf`
Tar emot multipart-formulärdata med en PDF-fil och ett JSON-fält `settings`.
## Parameters {#parameters}
| Parameter | Typ | Obligatorisk | Standard | Beskrivning |
|-----------|------|----------|---------|-------------|
| perSheet | integer | Nej | `2` | Sidor per ark: `2`, `3`, `4`, `8`, `9`, `12` eller `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}
- Sidorna placeras i läsordning (från vänster till höger, uppifrån och ned).
- Utdatasidans storlek matchar originalet; enskilda sidor skalas ned för att passa i rutnätet.
- Ett dokument på 20 sidor med `perSheet: 4` ger ett utdata på 5 sidor.
+53
View File
@@ -0,0 +1,53 @@
---
description: "Extrahera text från PDF-dokument med AI-driven OCR."
i18n_source_hash: 1431fcba180b
i18n_provenance: human
i18n_output_hash: 8169485e1e62
---
# PDF OCR {#pdf-ocr}
Extrahera text från PDF-dokument med AI-driven optisk teckenigenkänning. Stöder flera kvalitetsnivåer och språk. Kräver att OCR-funktionspaketet är installerat.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/ocr-pdf`
Tar emot multipart-formulärdata med en PDF-fil och ett valfritt JSON-fält `settings`.
## Parameters {#parameters}
| Parameter | Typ | Obligatorisk | Standard | Beskrivning |
|-----------|------|----------|---------|-------------|
| quality | string | Nej | `"balanced"` | OCR-kvalitetsnivå: `fast`, `balanced`, `best` |
| language | string | Nej | `"auto"` | Dokumentspråk: `auto`, `en`, `de`, `fr`, `es`, `zh`, `ja`, `ko` |
| pages | string | Nej | `"all"` | Sidval, t.ex. `"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}
Returnerar `202 Accepted`. Följ förloppet via SSE på `/api/v1/jobs/{jobId}/progress`.
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"async": true
}
```
## Notes {#notes}
- Godkänt indataformat: `.pdf`.
- Detta är ett AI-verktyg som kräver att **OCR-funktionspaketet** är installerat. Om paketet inte är installerat returnerar API:et `501 Not Implemented`.
- Kvalitetsnivån `fast` använder en lättare modell för snabbare bearbetning; `best` använder en mer träffsäker modell på bekostnad av hastighet.
- Språkinställningen `auto` försöker upptäcka dokumentspråket automatiskt.
- Du kan rikta in dig på specifika sidor med intervall (`"1-3"`), kommaseparerade listor (`"1,3,5"`) eller `"all"` för varje sida.
- För PDF-filer som redan innehåller markerbar text bör du överväga att använda det snabbare verktyget [PDF to Text](./pdf-to-text) istället.
+48
View File
@@ -0,0 +1,48 @@
---
description: "Ändra ordning på sidorna i en PDF med en uttrycklig sidordning."
i18n_source_hash: e961fc895b4b
i18n_provenance: human
i18n_output_hash: 8285f45a3f9a
---
# Organize PDF {#organize-pdf}
Ändra ordning på sidorna i en PDF genom att ange den önskade sidsekvensen.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/organize-pdf`
Tar emot multipart-formulärdata med en PDF-fil och ett JSON-fält `settings`.
## Parameters {#parameters}
| Parameter | Typ | Obligatorisk | Standard | Beskrivning |
|-----------|------|----------|---------|-------------|
| order | string | Ja | - | Önskad sidordning i qpdf-syntax, t.ex. `"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}
- Sidintervall använder qpdf-syntax: `3,1,2` ordnar om de tre första sidorna, och `5-z` lägger till sidorna 5 till sista sidan.
- Sidor kan dupliceras genom att de listas mer än en gång (t.ex. duplicerar `"1,1,2,3"` sidan 1).
- Sidor som inte listas i ordningssträngen utelämnas från utdata.
+61
View File
@@ -0,0 +1,61 @@
---
description: "Läs och skriv metadata för PDF-dokument."
i18n_source_hash: b2eaebf7467f
i18n_provenance: human
i18n_output_hash: c159b5211bfd
---
# PDF Metadata {#pdf-metadata}
Läs och uppdatera metadatafält för PDF-dokument, såsom titel, författare, ämne och nyckelord. När inga inställningar anges returneras befintlig metadata utan ändring.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/pdf-metadata`
Tar emot multipart-formulärdata med en PDF-fil och ett valfritt JSON-fält `settings`.
## Parameters {#parameters}
| Parameter | Typ | Obligatorisk | Standard | Beskrivning |
|-----------|------|----------|---------|-------------|
| title | string | Nej | - | Dokumenttitel (max 500 tecken) |
| author | string | Nej | - | Dokumentförfattare (max 500 tecken) |
| subject | string | Nej | - | Dokumentämne (max 500 tecken) |
| keywords | string | Nej | - | Dokumentnyckelord (max 500 tecken) |
Alla parametrar är valfria. Utelämnade fält lämnas oförändrade.
## 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}
- Godkänt indataformat: `.pdf`.
- Detta är ett snabbt (synkront) verktyg som returnerar resultatet direkt.
- Fältet `metadata` i svaret innehåller den resulterande metadatan efter eventuella uppdateringar.
- För att läsa metadata utan att ändra den, utelämna fältet `settings` eller skicka ett tomt objekt.
- Varje metadatafält är begränsat till 500 tecken.
@@ -0,0 +1,54 @@
---
description: "Lägg till sidnummer på varje sida i en PDF."
i18n_source_hash: 58342d6ac8d2
i18n_provenance: human
i18n_output_hash: 6118734e13dc
---
# PDF Page Numbers {#pdf-page-numbers}
Lägg till sidnumret "Page N of M" på varje sida i en PDF.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/pdf-page-numbers`
Tar emot multipart-formulärdata med en PDF-fil och ett JSON-fält `settings`.
## Parameters {#parameters}
| Parameter | Typ | Obligatorisk | Standard | Beskrivning |
|-----------|------|----------|---------|-------------|
| position | string | Nej | `"bc"` | Placering av sidnummer: `bl`, `bc`, `br`, `tl`, `tc`, `tr` |
| fontSize | integer | Nej | `10` | Teckenstorlek i punkter (6-24) |
### Position Values {#position-values}
- `tl` uppe till vänster, `tc` uppe i mitten, `tr` uppe till höger
- `bl` nere till vänster, `bc` nere i mitten, `br` nere till höger
## 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}
- Sidnummer renderas i formatet "Page 1 of 10".
- Nummer läggs till på varje sida, inklusive eventuella befintliga titel- eller omslagssidor.
- Standardpositionen `"bc"` placerar nummer nere i mitten av varje sida.
+133
View File
@@ -0,0 +1,133 @@
---
description: "Konvertera PDF-sidor till högkvalitativa bilder."
i18n_source_hash: 1c36be5dadb8
i18n_provenance: human
i18n_output_hash: ae131ed26a40
---
# PDF to Image {#pdf-to-image}
Konvertera PDF-sidor till högkvalitativa rasterbilder. Stöder sidval, flera utdataformat, DPI-kontroll och färglägen. Innehåller under-rutter för info och förhandsvisning för att inspektera PDF-filer före konvertering.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/pdf-to-image`
## Parameters {#parameters}
| Parameter | Typ | Obligatorisk | Standard | Beskrivning |
|-----------|------|----------|---------|-------------|
| format | string | Nej | `"png"` | Utdataformat: `png`, `jpg`, `webp`, `avif`, `tiff`, `gif`, `heic`, `heif`, `jxl` |
| dpi | number | Nej | 150 | Renderingsupplösning (36 till 2400). Högre DPI ger större, mer detaljerade bilder. |
| quality | number | Nej | 85 | Utdatakvalitet för förlustbringande format (1 till 100) |
| colorMode | string | Nej | `"color"` | Färgläge: `color`, `grayscale`, `bw` (svartvit tröskel) |
| pages | string | Nej | `"all"` | Sidval: `all`, enskild sida (`3`), intervall (`1-5`) eller kommaseparerat (`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`
Returnerar antalet sidor i en PDF utan att rendera några sidor.
### 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`
Returnerar lågupplösta JPEG-miniatyrer av alla sidor som base64-data-URL:er. Användbart för att bygga ett gränssnitt för sidval.
### 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}
- Använder MuPDF för PDF-rendering, vilket ger utdata med hög trohet, korrekt teckensnittsrendering och vektorgrafik.
- Lösenordsskyddade PDF-filer stöds inte och returnerar ett 400-fel.
- Parametern `pages` stöder flexibel syntax:
- `"all"` eller `""` - alla sidor
- `"3"` - enskild sida
- `"1-5"` - sidintervall (inklusive)
- `"1,3,5-8"` - blandade enskilda sidor och intervall
- Sidnummer är 1-baserade. Att ange sidor bortom dokumentets längd returnerar ett 400-fel.
- Huvudslutpunkten genererar alltid både nedladdningar av enskilda sidor och en ZIP som innehåller alla valda sidor.
- Förhandsvisningsslutpunkten renderar vid 72 DPI och skalar till 300 px bredd för snabb miniatyrgenerering. Miniatyrer är JPEG med 60 % kvalitet.
- Förhandsvisningsslutpunkten respekterar serverkonfigurationen `MAX_PDF_PAGES`, vilket begränsar hur många miniatyrer som genereras.
- För stora dokument vid hög DPI ökar bearbetningstiden proportionerligt. Överväg att använda lägre DPI (150) för webbanvändning och högre DPI (300-600) för utskrift.
+47
View File
@@ -0,0 +1,47 @@
---
description: "Extrahera vanlig text från en PDF."
i18n_source_hash: 15a7bc1cdf8f
i18n_provenance: human
i18n_output_hash: ea7a25764301
---
# PDF to Text {#pdf-to-text}
Extrahera all läsbar vanlig text från ett PDF-dokument till en textfil.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/pdf-to-text`
Tar emot multipart-formulärdata med en PDF-fil.
## Parameters {#parameters}
Detta verktyg har inga konfigurerbara parametrar. Ladda upp en PDF så extraheras dess textinnehåll.
## 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}
- Godkänt indataformat: `.pdf`.
- Detta är ett snabbt (synkront) verktyg som returnerar resultatet direkt.
- Fältet `chars` i svaret anger antalet extraherade tecken.
- Endast digitalt inbäddad text extraheras. För skannade dokument eller bildbaserade PDF-filer, använd verktyget [PDF OCR](./ocr-pdf) istället.
+46
View File
@@ -0,0 +1,46 @@
---
description: "Konvertera en PDF till ett Word-dokument (DOCX)."
i18n_source_hash: be41b6b49f84
i18n_provenance: human
i18n_output_hash: 9f4d2af147e2
---
# PDF to Word {#pdf-to-word}
Konvertera en textbaserad PDF till ett Word-dokument (DOCX). Passar bäst för PDF-filer med markerbar text; skannade sidor behöver OCR först.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/pdf-to-word`
Tar emot multipart-formulärdata med en PDF-fil.
## Parameters {#parameters}
Detta verktyg har inga konfigurerbara parametrar. Ladda upp en PDF så konverteras den till 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}
Returnerar `202 Accepted`. Följ förloppet via SSE på `/api/v1/jobs/{jobId}/progress`.
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"async": true
}
```
## Notes {#notes}
- Godkänt indataformat: `.pdf`.
- Fungerar bäst med textbaserade PDF-filer. Skannade eller enbart bildbaserade sidor ger tom eller minimal utdata; använd [PDF OCR](./ocr-pdf) för att lägga till ett textlager först.
- Konverteringen hanteras av LibreOffice som körs utan grafiskt gränssnitt på servern.
- Komplexa layouter (flera kolumner, överlappande element) kanske inte konverteras perfekt.
+45
View File
@@ -0,0 +1,45 @@
---
description: "Konvertera en PDF till arkivformatet PDF/A-2 för långtidsbevarande."
i18n_source_hash: 4c6bf7a12e84
i18n_provenance: human
i18n_output_hash: b40ae095488f
---
# PDF/A Convert {#pdf-a-convert}
Konvertera en PDF till arkivformatet PDF/A-2, lämpligt för långtidsbevarande och regelefterlevnad.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/pdfa-convert`
Tar emot multipart-formulärdata med en PDF-fil. Inget fält `settings` krävs.
## Parameters {#parameters}
Detta verktyg har inga inställningsparametrar. Ladda upp PDF-filen direkt.
## 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}
- Utdata följer standarden PDF/A-2.
- PDF/A bäddar in alla teckensnitt och tillåter inte externa referenser, så utdatafilen kan bli större än originalet.
- Kryptering och JavaScript tas bort under konverteringen, eftersom de inte är tillåtna enligt PDF/A-standarden.
+50
View File
@@ -0,0 +1,50 @@
---
description: "Lägg till lösenordsskydd med AES-256-kryptering på en PDF."
i18n_source_hash: 869cfbc739ef
i18n_provenance: human
i18n_output_hash: 834ae32be7e4
---
# Protect PDF {#protect-pdf}
Lägg till lösenordsskydd på en PDF med AES-256-kryptering.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/protect-pdf`
Tar emot multipart-formulärdata med en PDF-fil och ett JSON-fält `settings`.
## Parameters {#parameters}
| Parameter | Typ | Obligatorisk | Standard | Beskrivning |
|-----------|------|----------|---------|-------------|
| userPassword | string | Ja | - | Lösenord som krävs för att öppna PDF-filen (1-256 tecken) |
| ownerPassword | string | Nej | Samma som `userPassword` | Ägarlösenord för behörigheter (1-256 tecken) |
## 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}
- Krypteringen använder AES-256.
- Om `ownerPassword` utelämnas får det som standard samma värde som `userPassword`.
- Lösenord redigeras bort från granskningsloggar.
- Den krypterade PDF-filen kräver användarlösenordet för att öppnas och ägarlösenordet (om det skiljer sig) för fulla behörigheter.
+52
View File
@@ -0,0 +1,52 @@
---
description: "Ta permanent bort textförekomster från en PDF (verifierad äkta redigering)."
i18n_source_hash: 296ad2a701b2
i18n_provenance: human
i18n_output_hash: 6bc27b275c94
---
# Redact PDF {#redact-pdf}
Ta permanent bort angivna textförekomster från en PDF med verifierad äkta redigering. Den redigerade texten tas helt bort från filen, den täcks inte bara över med en svart ruta.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/redact-pdf`
Tar emot multipart-formulärdata med en PDF-fil och ett JSON-fält `settings`.
## Parameters {#parameters}
| Parameter | Typ | Obligatorisk | Standard | Beskrivning |
|-----------|------|----------|---------|-------------|
| terms | string[] | Ja | - | Textsträngar att redigera bort (1-50 termer, var och en upp till 200 tecken) |
| caseSensitive | boolean | Nej | `false` | Om matchningen är skiftlägeskänslig |
## 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}
- Godkänt indataformat: `.pdf`.
- Detta är ett snabbt (synkront) verktyg som returnerar resultatet direkt.
- Detta utför äkta redigering: matchad text tas bort från PDF-filens innehållsström, den döljs inte bara visuellt.
- Fältet `found` i svaret anger hur många förekomster som redigerades bort.
- Du kan redigera bort upp till 50 termer i en enda begäran.
+47
View File
@@ -0,0 +1,47 @@
---
description: "Ta bort specifika sidor från en PDF."
i18n_source_hash: 003e460a047c
i18n_provenance: human
i18n_output_hash: b0685e12c543
---
# Remove Pages {#remove-pages}
Ta bort specifika sidor från en PDF och behåll alla återstående sidor intakta.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/remove-pages`
Tar emot multipart-formulärdata med en PDF-fil och ett JSON-fält `settings`.
## Parameters {#parameters}
| Parameter | Typ | Obligatorisk | Standard | Beskrivning |
|-----------|------|----------|---------|-------------|
| pages | string | Ja | - | Sidintervall att ta bort i qpdf-syntax, t.ex. `"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}
- Du kan inte ta bort alla sidor från ett dokument; minst en sida måste finnas kvar.
- Sidintervall använder qpdf-syntax: `3` för en enskild sida, `5-7` för ett intervall, och kommatecken för att kombinera (t.ex. `1,3,5-7`).
+45
View File
@@ -0,0 +1,45 @@
---
description: "Försök reparera en skadad eller korrupt PDF."
i18n_source_hash: 864073a2f09f
i18n_provenance: human
i18n_output_hash: 6c2f016abc0a
---
# Repair PDF {#repair-pdf}
Försök reparera en skadad eller korrupt PDF genom att rekonstruera dess interna struktur.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/repair-pdf`
Tar emot multipart-formulärdata med en PDF-fil. Inget fält `settings` krävs.
## Parameters {#parameters}
Detta verktyg har inga inställningsparametrar. Ladda upp den skadade PDF-filen direkt.
## 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}
- Strukturell validering hoppas över på indata för att släppa igenom felaktigt utformade filer.
- Reparation är bästa möjliga försök; allvarligt korrupta filer kanske inte kan återställas helt.
- Den reparerade PDF-filen kan skilja sig något i storlek från originalet på grund av rekonstruerade korsreferenstabeller.
+49
View File
@@ -0,0 +1,49 @@
---
description: "Rotera sidor i en PDF med 90, 180 eller 270 grader."
i18n_source_hash: cc2acd091427
i18n_provenance: human
i18n_output_hash: ab77cda241c2
---
# Rotate PDF {#rotate-pdf}
Rotera alla eller valda sidor i en PDF med en angiven vinkel.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/rotate-pdf`
Tar emot multipart-formulärdata med en PDF-fil och ett JSON-fält `settings`.
## Parameters {#parameters}
| Parameter | Typ | Obligatorisk | Standard | Beskrivning |
|-----------|------|----------|---------|-------------|
| angle | integer | Nej | `90` | Rotationsvinkel: `90`, `180` eller `270` |
| range | string | Nej | `"1-z"` | Sidintervall i qpdf-syntax, t.ex. `"1-5,8"` (`"1-z"` = alla sidor) |
## 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}
- Rotationen sker medurs.
- Sidintervall använder qpdf-syntax: `1-5` för sidorna 1 till 5, `z` för den sista sidan, och kommatecken för att kombinera intervall.
- Standardintervallet `"1-z"` roterar alla sidor.
+79
View File
@@ -0,0 +1,79 @@
---
description: "Stämpla uppladdade signaturbilder på en PDF med normaliserade sidplaceringar."
i18n_source_hash: c28f78c2e7fd
i18n_provenance: human
i18n_output_hash: 661dcb901278
---
# Sign PDF {#sign-pdf}
Stämpla en eller flera uppladdade PNG-signaturbilder på valfri sida i en PDF. Denna rutt använder ett anpassat multipart-kontrakt eftersom den behöver PDF-filen, en eller flera signaturbilder och placeringskoordinater.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/sign-pdf`
Tar emot multipart-formulärdata. PDF-filen skickas som `file`; signaturer skickas som `sig0`, `sig1` och så vidare; placeringar skickas i ett JSON-fält `placements`.
## Parameters {#parameters}
| Parameter | Typ | Obligatorisk | Standard | Beskrivning |
|-----------|------|----------|---------|-------------|
| file | file | Ja | - | PDF-fil att signera |
| sig0 | file | Ja | - | Första signaturbilden. Ytterligare bilder använder `sig1`, `sig2` och så vidare |
| placements | JSON string | Ja | - | Array av placeringsobjekt: `{ "sig": 0, "page": 0, "x": 0.2, "y": 0.7, "w": 0.25, "h": 0.08 }` |
| clientJobId | string | Nej | - | Valfri UUID för förloppsspårning via SSE |
| fileId | string | Nej | - | Valfritt fil-bibliotek-ID för att spara det signerade resultatet som en ny version |
## Placement Coordinates {#placement-coordinates}
| Fält | Typ | Beskrivning |
|-------|------|-------------|
| sig | integer | Signaturbildindex. `0` mappas till `sig0` |
| page | integer | Noll-baserat PDF-sidindex |
| x | number | Vänsterposition som en sidfraktion |
| y | number | Toppposition som en sidfraktion |
| w | number | Signaturbredd som en sidfraktion |
| h | number | Signaturhöjd som en sidfraktion |
Koordinater använder ett ursprung uppe till vänster. Värden kan blöda något utanför sidkanten; PDF-renderaren beskär den slutliga stämpeln till sidan.
## 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
}
```
Om begäran inte kan slutföras inom det synkrona väntefönstret returnerar API:et:
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"async": true
}
```
Anslut till `/api/v1/jobs/<jobId>/progress` och ladda ner resultatet när jobbet är klart.
## Notes {#notes}
- Godkänt PDF-indataformat: `.pdf`.
- Signaturbilder måste vara giltiga bildfiler, vanligtvis PNG med transparens.
- Upp till 100 signaturbilder och 100 placeringar godtas.
- `sign-pdf` är en anpassad rutt och använder inte det vanliga JSON-fältet `settings` för verktyg.
+61
View File
@@ -0,0 +1,61 @@
---
description: "Extrahera sidor eller dela upp en PDF i delar."
i18n_source_hash: 5c8d8041d219
i18n_provenance: human
i18n_output_hash: 7b7e6c0e4d22
---
# Split PDF {#split-pdf}
Extrahera ett sidintervall till en ny PDF, eller dela upp ett dokument i delar om N sidor.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/split-pdf`
Tar emot multipart-formulärdata med en PDF-fil och ett JSON-fält `settings`.
## Parameters {#parameters}
| Parameter | Typ | Obligatorisk | Standard | Beskrivning |
|-----------|------|----------|---------|-------------|
| mode | string | Nej | `"range"` | Uppdelningsläge: `range` eller `every` |
| range | string | När läget är `range` | - | Sidintervall i qpdf-syntax, t.ex. `"1-5,8,10-z"` |
| everyN | integer | När läget är `every` | - | Dela upp i delar om N sidor (1-500) |
## Example Request {#example-request}
Extrahera specifika sidor:
```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"}'
```
Dela upp i delar om 10 sidor:
```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}
- I läget `range` returneras en enda PDF som innehåller de valda sidorna.
- I läget `every` är resultatet ett ZIP-arkiv som innehåller de enskilda delarna.
- Sidintervall använder qpdf-syntax: `1-5` för sidorna 1 till 5, `z` för den sista sidan, och kommatecken för att kombinera intervall (t.ex. `1-3,7,10-z`).
+48
View File
@@ -0,0 +1,48 @@
---
description: "Ta bort lösenordsskydd från en PDF."
i18n_source_hash: 14f5165d185c
i18n_provenance: human
i18n_output_hash: d375099934ee
---
# Unlock PDF {#unlock-pdf}
Ta bort lösenordsskydd från en krypterad PDF genom att ange rätt lösenord.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/unlock-pdf`
Tar emot multipart-formulärdata med en PDF-fil och ett JSON-fält `settings`.
## Parameters {#parameters}
| Parameter | Typ | Obligatorisk | Standard | Beskrivning |
|-----------|------|----------|---------|-------------|
| password | string | Ja | - | Lösenord för att dekryptera PDF-filen (1-256 tecken) |
## 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}
- Rätt lösenord måste anges; ett felaktigt lösenord returnerar ett 400-fel.
- Antingen användarlösenordet eller ägarlösenordet fungerar för dekryptering.
- Lösenord redigeras bort från granskningsloggar.
+58
View File
@@ -0,0 +1,58 @@
---
description: "Lägg till en textvattenstämpel på varje sida i en PDF."
i18n_source_hash: f1f7d8912fbd
i18n_provenance: human
i18n_output_hash: 46b3491dda9a
---
# Watermark PDF {#watermark-pdf}
Stämpla en textvattenstämpel på varje sida i en PDF med konfigurerbar position, storlek, opacitet och rotation.
## API Endpoint {#api-endpoint}
`POST /api/v1/tools/pdf/watermark-pdf`
Tar emot multipart-formulärdata med en PDF-fil och ett JSON-fält `settings`.
## Parameters {#parameters}
| Parameter | Typ | Obligatorisk | Standard | Beskrivning |
|-----------|------|----------|---------|-------------|
| text | string | Ja | - | Vattenstämpeltext (1-200 tecken) |
| position | string | Nej | `"c"` | Placering på sidan: `tl`, `tc`, `tr`, `l`, `c`, `r`, `bl`, `bc`, `br` |
| fontSize | integer | Nej | `48` | Teckenstorlek i punkter (6-72) |
| opacity | number | Nej | `0.3` | Vattenstämpelns opacitet (0.05-1) |
| rotation | number | Nej | `45` | Rotationsvinkel i grader (-180 till 180) |
### Position Values {#position-values}
- `tl` uppe till vänster, `tc` uppe i mitten, `tr` uppe till höger
- `l` mitten till vänster, `c` mitten, `r` mitten till höger
- `bl` nere till vänster, `bc` nere i mitten, `br` nere till höger
## 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}
- Vattenstämpeln renderas som ett textöverlägg på varje sida.
- Samma vattenstämpeltext, position och stil tillämpas enhetligt på alla sidor.
- Använd lägre opacitetsvärden (0.1-0.3) för diskreta vattenstämplar som inte skymmer innehållet.