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.3 KiB
2.3 KiB
description, i18n_source_hash, i18n_provenance, i18n_output_hash
| description | i18n_source_hash | i18n_provenance | i18n_output_hash |
|---|---|---|---|
| Giảm kích thước tệp PDF bằng cách nén các hình ảnh nhúng. | a8bb0baaca25 | human | c51a44fc08cb |
Compress PDF
Giảm kích thước tệp PDF bằng cách hạ độ phân giải các hình ảnh nhúng. Chọn giữa thanh trượt chất lượng hoặc kích thước tệp mục tiêu.
API Endpoint
POST /api/v1/tools/pdf/compress-pdf
Chấp nhận dữ liệu biểu mẫu multipart với một tệp PDF và một trường JSON settings.
Parameters
| Tham số | Kiểu | Bắt buộc | Mặc định | Mô tả |
|---|---|---|---|---|
| mode | string | Không | "quality" |
Chế độ nén: quality hoặc targetSize |
| quality | integer | Không | 75 |
Chất lượng nén, 1-100 (càng cao = nén càng ít). Dùng trong chế độ quality |
| targetSizeKb | number | Không | - | Kích thước tệp mục tiêu tính bằng kilobyte. Dùng trong chế độ targetSize |
Example Request
Nén theo chất lượng:
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}'
Nén xuống kích thước mục tiêu:
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
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/document.pdf",
"originalSize": 5200000,
"processedSize": 1800000
}
Notes
- Ở chế độ
quality, giá trị thấp hơn tạo ra tệp nhỏ hơn nhưng hình ảnh suy giảm nhiều hơn. - Ở chế độ
targetSize, một tìm kiếm nhị phân tìm DPI cao nhất vừa với kích thước yêu cầu. - Nếu việc nén khiến tệp lớn hơn, dữ liệu byte gốc được trả về nguyên vẹn.
- Nội dung văn bản và vector không bị ảnh hưởng; chỉ các hình ảnh raster nhúng mới bị hạ độ phân giải.