Đóng dấu ảnh online
Chèn watermark chữ và / hoặc logo lên ảnh JPEG, PNG: 9 vị trí hoặc chữ lặp chéo toàn ảnh, độ mờ, kích thước, lề; tối đa 20 ảnh mỗi lần, trả về ZIP.
Kết quả
Bấm “Chạy” để xem kết quả.
Tải ảnh lên bằng multipart file (nhiều file để xử lý hàng loạt) kèm chữ text, logo (PNG trong suốt hoặc JPEG) hoặc cả hai. position là một trong top-left, top, top-right, left, center, right, bottom-left, bottom, bottom-right hoặc tile (watermark lặp khắp ảnh theo hàng so le, xoay theo rotation, mặc định 30°). scale là chiều rộng watermark so với chiều rộng ảnh (mặc định 0,3), opacity 0–1 hoặc 0–100, margin là tỉ lệ theo cạnh ngắn, spacing là khoảng cách giữa các ô lặp. Chữ dùng font Be Vietnam Pro (đủ dấu tiếng Việt) màu color có viền mảnh tương phản (stroke, bỏ viền bằng outline=false); khi có cả logo và chữ thì chữ nằm dưới logo (layout=stack) hoặc đặt riêng (text_position).
Một ảnh trả về ảnh (giữ định dạng, hoặc format=png|jpeg, quality); nhiều ảnh trả về watermarked.zip. max_width thu nhỏ ảnh trước khi đóng dấu. Giới hạn: 25 megapixel mỗi ảnh, 100 MP và 20 ảnh mỗi request, cùng dung lượng upload theo gói. Ảnh chỉ xử lý trong bộ nhớ, không lưu lại.
Dùng trong code của bạn
curl -X POST "https://apibox.io.vn/v1/image-watermark" \
-H "Authorization: Bearer YOUR_API_KEY" \
-F "file=@./my-file" \
-o outputconst form = new FormData();
form.append('file', fileInput.files[0]);
const res = await fetch('https://apibox.io.vn/v1/image-watermark', {
method: 'POST',
headers: { Authorization: 'Bearer YOUR_API_KEY' },
body: form,
});
console.log(await res.json());import requests
res = requests.post(
"https://apibox.io.vn/v1/image-watermark",
headers={"Authorization": "Bearer YOUR_API_KEY"},
files={"file": open("my-file", "rb")},
timeout=30,
)
open("output", "wb").write(res.content)<?php
$ch = curl_init('https://apibox.io.vn/v1/image-watermark');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_HTTPHEADER => ['Authorization: Bearer YOUR_API_KEY'],
CURLOPT_POSTFIELDS => ['file' => new CURLFile('my-file')],
]);
$response = curl_exec($ch);
file_put_contents('output', $response);Tài liệu API → Nhận API key miễn phí
Hỏi đáp
Hỗ trợ định dạng nào?
Đầu vào và đầu ra là JPEG, PNG. Logo có thể là PNG nền trong suốt.
Đóng dấu nhiều ảnh thế nào?
Gửi nhiều file trong cùng request multipart (tối đa 20); kết quả là file ZIP, mỗi ảnh một file đã đóng dấu.
Chữ tiếng Việt có dấu được không?
Được: chữ được vẽ từ font Be Vietnam Pro, đủ dấu tiếng Việt.