This page was machine-translated. Spotted a mistake?Help improve it.
Skip to content

Kompres

Kurangi ukuran file gambar dengan menentukan level kualitas atau ukuran file target dalam kilobyte. Alat ini menggunakan pencarian biner iteratif untuk mencapai target ukuran secara akurat.

API Endpoint

POST /api/v1/tools/image/compress

Menerima data formulir multipart dengan file gambar dan field JSON settings.

Parameter

ParameterTipeWajibDefaultDeskripsi
modestringTidak"quality"Mode kompresi: quality atau targetSize
qualitynumberTidak80Level kualitas (1-100). Digunakan ketika mode adalah quality.
targetSizeKbnumberTidak-Ukuran file target dalam kilobyte. Digunakan ketika mode adalah targetSize.

Contoh Permintaan

Kompres ke kualitas 60:

bash
curl -X POST http://localhost:1349/api/v1/tools/image/compress \
  -H "Authorization: Bearer si_your-api-key" \
  -F "[email protected]" \
  -F 'settings={"mode": "quality", "quality": 60}'

Kompres ke ukuran target 200 KB:

bash
curl -X POST http://localhost:1349/api/v1/tools/image/compress \
  -H "Authorization: Bearer si_your-api-key" \
  -F "[email protected]" \
  -F 'settings={"mode": "targetSize", "targetSizeKb": 200}'

Contoh Respons

json
{
  "jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/photo.jpg",
  "originalSize": 2450000,
  "processedSize": 204800
}

Catatan

  • Dalam mode quality, nilai lebih rendah menghasilkan file lebih kecil dengan lebih banyak artefak kompresi. Nilai 80 adalah default yang baik untuk penggunaan web.
  • Dalam mode targetSize, engine melakukan kompresi iteratif untuk mendekati target semaksimal mungkin tanpa melampauinya.
  • Format output sesuai dengan format input. Kompresi diterapkan pada encoding native format tersebut (mis. kualitas JPEG untuk file JPEG, kualitas WebP untuk file WebP).
  • Jika kualitas default (80) dapat diterima, Anda dapat menghilangkan parameter quality sepenuhnya.