Công cụ PDF API

Gộp nhiều file PDF, trích hoặc tách trang, xoay trang, đóng dấu chìm chéo trang hay đánh số trang (hỗ trợ chữ tiếng Việt) trong một API duy nhất.

POSThttps://apibox.io.vn/v1/pdf-tools

Một endpoint với nhiều action. merge ghép tối đa 20 file PDF theo thứ tự (multipart file1, file2… hoặc mảng files_base64). extract tạo PDF mới từ các trang trong pages, ví dụ 1-3,5,8-last (lấy đúng thứ tự đã ghi, nên 3,1 sẽ đảo trang). split cắt tài liệu cứ N trang một phần (every) hoặc theo khoảng (ranges=1-3;4-6) và trả về file ZIP chứa các phần. rotate xoay trang 90, 180 hoặc 270 độ. info (mặc định) trả về số trang, tiêu đề, phần mềm tạo và khổ giấy.

watermark in dòng chữ chéo mờ (text, độ đậm opacity 0,03–1, mặc định 0,15) lên từng trang, cỡ chữ tự co theo trang; page_numbers ghi số trang theo mẫu như Trang {n}/{total} (format, vị trí position top / bottom kết hợp left / center / right, số bắt đầu start). Cả hai dùng font Be Vietnam Pro nên “BẢN NHÁP” hay “Trang 1/5” hiển thị đúng dấu. Mọi action trừ merge đều nhận pages để chỉ xử lý một phần tài liệu.

Kết quả là file PDF đã xử lý (ZIP với split, JSON với info). PDF có mật khẩu bị từ chối; file được xử lý trong bộ nhớ theo giới hạn dung lượng của gói.

Tham số

TênVị tríKiểuBắt buộcMặc định
actionquery|bodystringkhônginfomerge, extract, split, rotate, watermark, page_numbers hoặc info.
filebodyfilecóFile PDF (multipart, body thô hoặc file_base64). Với merge: file1, file2… (tới file10) hoặc files_base64 (mảng, tối đa 20).
pagesquery|bodystringkhôngCác trang, ví dụ 1-3,5,8-last. Bắt buộc với extract; với rotate / watermark / page_numbers dùng để giới hạn trang (mặc định: tất cả).
everyquery|bodynumberkhông1split: số trang mỗi phần.
rangesquery|bodystringkhôngsplit: các phần ngăn bởi ;, ví dụ 1-3;4-6 (tối đa 200 phần).
anglequery|bodynumberkhông90rotate: 90, 180 hoặc 270 (nhận cả -90).
textquery|bodystringkhôngwatermark: nội dung dấu chìm (bắt buộc, tối đa 100 ký tự).
opacityquery|bodynumberkhông0.15watermark: 0,03–1.
formatquery|bodystringkhông{n} / {total}page_numbers: mẫu nhãn có {n} và {total}.
positionquery|bodystringkhôngbottom-centerpage_numbers: top- hoặc bottom- kết hợp left, center, right.
startquery|bodynumberkhông1page_numbers: số bắt đầu.

Ví dụ

curl -X POST "https://apibox.io.vn/v1/pdf-tools" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -F "0=@./my-file"

Kết quả trả về

{
  "pages": 1,
  "title": "Báo giá",
  "author": null,
  "producer": "APIBox md-pdf",
  "page_size_pt": {
    "width": 595,
    "height": 842
  },
  "actions": [
    "merge",
    "extract",
    "split",
    "rotate",
    "watermark",
    "page_numbers",
    "info"
  ]
}

Ứng dụng

  • Gộp hoá đơn và phụ lục thành một file PDF
  • Đóng dấu “BẢN NHÁP”, “MẬT” lên bản dự thảo
  • Đánh số trang cho báo cáo tạo tự động
  • Tách tập hồ sơ scan thành từng file riêng

Hỏi đáp

Chọn trang thế nào?

pages=1-3,5,8-last; khoảng có thể đi ngược (5-1) và các trang được lấy theo đúng thứ tự đã ghi.

Có mở được PDF có mật khẩu không?

Không. Hãy gỡ mật khẩu trước, nếu không API trả lỗi invalid_pdf.

Có nén giảm dung lượng PDF không?

Không, các trang được sao chép nguyên vẹn. API dùng để gộp, tách và đánh dấu tài liệu.

API liên quan

Bắt đầu với 1.000 request miễn phí mỗi tháng. Nhận API key miễn phí →