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

Ảnh sang SVG

Vector hóa ảnh raster thành SVG bằng các thuật toán tracing. Hỗ trợ tracing đen trắng (potrace) và vector hóa nhiều lớp toàn màu.

API Endpoint

POST /api/v1/tools/image/vectorize

Tham số

Tham sốKiểuBắt buộcMặc địnhMô tả
colorModestringKhông"bw"Chế độ tracing: bw (đen trắng) hoặc color (nhiều lớp màu)
thresholdnumberKhông128Ngưỡng độ sáng cho chế độ B&W (0 đến 255). Các pixel bên dưới ngưỡng trở thành đen.
colorPrecisionnumberKhông6Độ chính xác lượng tử hóa màu cho chế độ màu (1 đến 16). Giá trị cao hơn tạo ra nhiều lớp màu riêng biệt hơn.
layerDifferencenumberKhông6Chênh lệch màu tối thiểu giữa các lớp trong chế độ màu (1 đến 128)
filterSpecklenumberKhông4Diện tích tối thiểu cho các hình được trace tính bằng pixel (1 đến 256). Xóa nhiễu/đốm.
pathModestringKhông"spline"Làm mượt đường: none (răng cưa), polygon (đoạn thẳng), spline (đường cong mượt)
cornerThresholdnumberKhông60Ngưỡng góc để phát hiện góc trong chế độ màu (0 đến 180 độ)
invertbooleanKhôngfalseĐảo ngược ảnh trước khi trace (hoán đổi đen/trắng)

Ví dụ Request

bash
curl -X POST http://localhost:1349/api/v1/tools/image/vectorize \
  -F "[email protected]" \
  -F 'settings={"colorMode":"bw","threshold":128,"filterSpeckle":4,"pathMode":"spline"}'

Vector hóa màu

bash
curl -X POST http://localhost:1349/api/v1/tools/image/vectorize \
  -F "[email protected]" \
  -F 'settings={"colorMode":"color","colorPrecision":8,"layerDifference":6,"filterSpeckle":4}'

Ví dụ Response

json
{
  "jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/logo.svg",
  "originalSize": 45678,
  "processedSize": 12345
}

Ghi chú

  • Đầu ra luôn là tệp SVG bất kể định dạng đầu vào.
  • Hỗ trợ các định dạng đầu vào HEIC, RAW, PSD, và SVG (tự động giải mã sang raster trước khi trace).
  • Chế độ B&W dùng thuật toán potrace. Ảnh được chuyển sang grayscale trước, sau đó áp ngưỡng thành đen/trắng thuần trước khi trace.
  • Chế độ màu dùng cách tiếp cận nhiều lớp: ảnh được lượng tử hóa thành các lớp màu, mỗi lớp được trace riêng và xếp chồng trong đầu ra SVG.
  • Giá trị filterSpeckle thấp hơn giữ lại nhiều chi tiết hơn nhưng tạo ra tệp SVG lớn hơn với nhiều path hơn.
  • Thiết lập pathMode ảnh hưởng đáng kể đến kích thước tệp: none tạo ra nhiều path nhất, spline tạo ra đầu ra mượt nhất (và thường nhỏ nhất).
  • Để có kết quả tốt nhất với logo và biểu tượng, dùng chế độ B&W với đầu vào tương phản cao rõ ràng. Đối với ảnh chụp hoặc minh họa, dùng chế độ màu với colorPrecision cao hơn.