Files
SnapOtter/apps/docs/id/tools/pdf/watermark-pdf.md
T
SnapOtterandGitHub 4963ab3bbd 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.
2026-07-11 13:52:47 +08:00

1.9 KiB

description, i18n_source_hash, i18n_provenance, i18n_output_hash
description i18n_source_hash i18n_provenance i18n_output_hash
Tambahkan watermark teks ke setiap halaman PDF. f1f7d8912fbd human aa90847c5de7

Watermark PDF

Cap watermark teks pada setiap halaman PDF dengan posisi, ukuran, opasitas, dan rotasi yang dapat dikonfigurasi.

API Endpoint

POST /api/v1/tools/pdf/watermark-pdf

Menerima data form multipart berisi file PDF dan sebuah field JSON settings.

Parameters

Parameter Type Required Default Description
text string Yes - Teks watermark (1-200 karakter)
position string No "c" Penempatan pada halaman: tl, tc, tr, l, c, r, bl, bc, br
fontSize integer No 48 Ukuran font dalam poin (6-72)
opacity number No 0.3 Opasitas watermark (0.05-1)
rotation number No 45 Sudut rotasi dalam derajat (-180 sampai 180)

Position Values

  • tl kiri-atas, tc tengah-atas, tr kanan-atas
  • l tengah-kiri, c tengah, r tengah-kanan
  • bl kiri-bawah, bc tengah-bawah, br kanan-bawah

Example Request

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

{
  "jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/document.pdf",
  "originalSize": 2450000,
  "processedSize": 2500000
}

Notes

  • Watermark dirender sebagai overlay teks pada setiap halaman.
  • Teks watermark, posisi, dan gaya yang sama diterapkan secara seragam ke semua halaman.
  • Gunakan nilai opasitas yang lebih rendah (0.1-0.3) untuk watermark halus yang tidak menutupi konten.