Files
SnapOtter/apps/docs/uk/tools/image/vectorize.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

4.8 KiB
Raw Blame History

description, i18n_source_hash, i18n_provenance, i18n_output_hash
description i18n_source_hash i18n_provenance i18n_output_hash
Конвертація растрових зображень у SVG з чорно-білою (potrace) та повнокольоровою багатошаровою векторизацією. f3e4777188ad human 2e26e5dc43e9

Зображення у SVG

Векторизуйте растрові зображення у SVG за допомогою алгоритмів трасування. Підтримує чорно-біле трасування (potrace) та повнокольорову багатошарову векторизацію.

Кінцева точка API

POST /api/v1/tools/image/vectorize

Параметри

Параметр Тип Обов’язковий За замовчуванням Опис
colorMode string Ні "bw" Режим трасування: bw (чорно-білий) або color (багатокольорові шари)
threshold number Ні 128 Поріг яскравості для Ч/Б режиму (від 0 до 255). Пікселі нижче стають чорними.
colorPrecision number Ні 6 Точність квантування кольору для кольорового режиму (від 1 до 16). Вищі значення дають більше окремих кольорових шарів.
layerDifference number Ні 6 Мінімальна різниця кольору між шарами в кольоровому режимі (від 1 до 128)
filterSpeckle number Ні 4 Мінімальна площа для трасованих фігур у пікселях (від 1 до 256). Видаляє шум/крапинки.
pathMode string Ні "spline" Згладжування контурів: none (зубчасті), polygon (прямі сегменти), spline (плавні криві)
cornerThreshold number Ні 60 Поріг кута для розпізнавання кутів у кольоровому режимі (від 0 до 180 градусів)
invert boolean Ні false Інвертувати зображення перед трасуванням (поміняти чорний/білий місцями)

Приклад запиту

curl -X POST http://localhost:1349/api/v1/tools/image/vectorize \
  -F "file=@logo.png" \
  -F 'settings={"colorMode":"bw","threshold":128,"filterSpeckle":4,"pathMode":"spline"}'

Кольорова векторизація

curl -X POST http://localhost:1349/api/v1/tools/image/vectorize \
  -F "file=@illustration.png" \
  -F 'settings={"colorMode":"color","colorPrecision":8,"layerDifference":6,"filterSpeckle":4}'

Приклад відповіді

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

Примітки

  • Вивід завжди є файлом SVG незалежно від формату вводу.
  • Підтримує вхідні формати HEIC, RAW, PSD та SVG (автоматично декодуються в растр перед трасуванням).
  • Ч/Б режим використовує алгоритм potrace. Зображення спочатку конвертується у відтінки сірого, потім порогується до чистого чорного/білого перед трасуванням.
  • Кольоровий режим використовує багатошаровий підхід: зображення квантується на кольорові шари, кожен трасується окремо та накладається у виводі SVG.
  • Нижчі значення filterSpeckle зберігають більше деталей, але дають більші файли SVG з більшою кількістю контурів.
  • Налаштування pathMode суттєво впливає на розмір файлу: none дає найбільше контурів, spline дає найплавніший (і зазвичай найменший) вивід.
  • Для найкращих результатів із логотипами та іконками використовуйте Ч/Б режим із чистим високо контрастним вводом. Для фотографій чи ілюстрацій використовуйте кольоровий режим із вищим colorPrecision.