Онлайн-мейкер трафаретів

Якщо вам потрібно перетворити фотографію на трафарет, скористайтеся нашим безкоштовним онлайн-інструментом! Він створює трафарет із зображення та дозволяє векторизувати його для отримання чіткої масштабованої векторної графіки. Мейкер трафаретів підтримує безліч форматів зображень, включаючи JPEG, JPG, PNG, BMP, ICO, GIF, TIFF, WEBP, SVG та інші.




Що таке створення трафарету із зображення?

Створення трафарету (Stenciling) – це процес перетворення звичайного зображення або фотографії на контурне зображення, яке можна використовувати як трафарет для створення ефектів, подібних до графіті. Є кілька основних кроків для перетворення фотографії на трафарет:

  • Перетворіть фотографію на відтінки сірого (Grayscale) (це необов’язково, оскільки замість цього ви можете зменшити кількість кольорів квантування для точнішого налаштування).
  • Квантуйте кольори зображення, щоб зробити його простішим. Після цього ви можете завантажити результат або векторизувати його та отримати контурні лінії трафаретної фігури.
  • Є три варіанти малювання трафарету: “None”, коли всі векторизовані фігури заповнені; “Auto”, коли фігури не заповнені, а краї мають “оригінальний колір”; та “MonoColor”, коли фігури також не заповнені, але краї мають попередньо визначений колір.

Як використовувати Image Vectorizer?

  1. Завантажте вихідне растрове зображення з локальної файлової системи. Інтерфейс відображає три панелі: Source Image, Quantized Image і Vectorized Image.
  2. Рушій обробляє Image з параметрами за замовчуванням. Для оптимізації SVG-виводу використовуйте бічні панелі для налаштування параметрів квантування та векторизації. Натисніть Quantize для попереднього перегляду зменшення палітри, а потім Vectorize для відтворення SVG-шляхів.
  3. Натисніть Download, щоб зберегти згенерований векторний файл.

Параметри квантування (Quantization Options)

Налаштуйте ці параметри, щоб керувати тим, як алгоритм групує пікселі та зменшує вихідну колірну палітру:

  • colors – задає точне обмеження максимального розміру палітри.
  • method – перемикання між алгоритмами квантування кольорів на основі гістограми.
  • minHueCols – керує пороговими значеннями чутливості при обробці кольорових градієнтів.
  • scale – регулює коефіцієнт масштабування для більш точної або грубої вибірки кольорів.
  • grayscale – примусово переводить вивід у монохромні межі.

Параметри векторизації (Vectorization Options)

Керує поведінкою геометричного трасування, що застосовується до квантованої карти:

  • threshold – визначає обмеження чутливості пікселів для виявлення граничних контурів.
  • severity – змінює згладжування контурів з використанням просторового розміру найближчого сусіда.
  • line-width – визначає товщину штриха, що призначається генерованим SVG-лініям.
  • stencil – застосовує двійкову маску контуру, ідеальну для перетворення фотографій з безперервними тонами в трафаретні силуети.
  • trace paths – перемикає візуальний рендеринг контрольних точок кривих Безьє та сплайнів, що використовуються для побудови сегментів.

Як створити трафарет на C#

Ви можете легко інтегрувати ефект трафарету у свій робочий процес. За допомогою класу ImageVectorizer та об’єкта StencilConfiguration ви можете визначати конкретні типи трафаретів та вибирати бажані кольори для створення високодеталізованої графіки.


Створення трафарету через C#

    // Initialize an instance of the ImageVectorizer class
    ImageVectorizer vectorizer = new ImageVectorizer
    {
        // Optionally set a configuration
        Configuration =
        {
            // Optionally create an instance of the PathBuilder class
            PathBuilder = new BezierPathBuilder 
            {
                // Optionally set trace smoother
                TraceSmoother = new ImageTraceSmoother(1),
                ErrorThreshold = 30,
                MaxIterations = 30
            },
            ColorsLimit = 10,
            LineWidth = 1,
            // Set stencil effect configuration
            Stencil = new StencilConfiguration { Type = StencilType.MonoColor, Color = Aspose.Svg.Drawing.Color.FromRgb(0,0,255) }
        }
    };
    
    // Vectorize image from the specified file
    using (SVGDocument document = vectorizer.Vectorize(Path.Combine(DataDir, "image.png")))
    {
        // Save the vectorized image with the stencil effect as an SVG file
        document.Save(Path.Combine(OutputDir, "image-stencil.svg"));
    }

Етапи створення трафарету на C#

З Aspose.SVG ви можете створити трафарет з будь-якого растрового зображення за три кроки:

  1. Ініціалізуйте ImageVectorizer та отримайте доступ до його параметрів Configuration .
    • Налаштуйте PathBuilder для трасування плавних векторних кривих.
    • Визначте ColorsLimit (наприклад, 10), щоб спростити вихідне зображення.
    • Налаштуйте властивість Stencil (наприклад, StencilType.MonoColor).
  2. Передайте файл вашого зображення у метод Vectorize() .
  3. Збережіть результат за допомогою команди Save() .

Для повного огляду ознайомтеся з посібником Vectorization – Basic Overview . Цей посібник проведе вас через основні концепції заміни растрових карт масштабованими векторними шляхами, включаючи обробку PNG, JPG, BMP у SVG-документи.


FAQ

1. Як я можу програмно векторизувати зображення Image на C#?

Ви можете використовувати клас ImageVectorizer в Aspose.SVG для розбору та перетворення растрових зображень Image у контури SVG. API для .NET надає прямий доступ до алгоритмів квантування, побудовників контурів та налаштувань згладжування, виконуючи перетворення незалежно від зовнішнього графічного програмного забезпечення.

2. Що відбувається під час перетворення растра у вектор?

Векторизація аналізує плоский 2D-масив пікселів вихідного растрового зображення та реконструює його візуальні дані у математичні лінії, криві Безьє та геометричні фігури. Це перетворює растрові файли, залежні від роздільної здатності, в універсально масштабовані векторні елементи.

3. Навіщо впроваджувати векторизацію зображень у додатках .NET?

Векторизація застарілих растрових ресурсів, таких як логотипи, креслення та технічні діаграми, забезпечує нескінченне масштабування без погіршення якості. Автоматизуючи це, розробники можуть динамічно створювати адаптивні та незалежні від роздільної здатності елементи інтерфейсу користувача або графіку для друку безпосередньо на своїй серверній інфраструктурі.

4. Як працює алгоритм векторизації зображення?

Механізм векторизації спочатку застосовує розбиття кольорів (квантування), щоб згрупувати схожі пікселі та зменшити візуальний шум. Далі алгоритми трасування контурів виявляють межі та будують фігури з безперервних кластерів пікселів. Нарешті, ці межі розраховуються у стандартні елементи SVG <path> з використанням сплайнів або вузлів кривих Безьє.



Формати вихідних зображень

Цифрові зображення зазвичай поділяються на дві архітектурні парадигми: растрові та векторні. Растрове зображення (таке як JPEG, PNG або BMP) структурно визначається строгим 2D-масивом пікселів, де кожна фіксована графічна координата зіставлена з конкретними даними про колір. Хоча ця матриця без проблем справляється зі складними фотографічними градієнтами та безперервними тонами, вона нативно страждає від серйозної деградації при масштабуванні. Оскільки розміри сітки та кількість пікселів жорстко фіксовані, алгоритми зміни розміру математично вносять артефакти, розмитість або агресивне ступінчасте спотворення. У робочих процесах векторизації парсинг таких растрових структур вимагає серйозних математичних обчислень для ізоляції статичних колірних зон та їхнього відтворення у вигляді адаптивних, незалежних від роздільної здатності структур SVG.

Цільовий формат SVG

SVG (Scalable Vector Graphics) – це мова на основі XML для опису двовимірної векторної графіки. На відміну від растрових форматів, заснованих на пікселях, SVG зберігає геометрію зображення у вигляді математичних формул (шляхів, фігур, тексту та SVG-фільтрів). Ця архітектура, незалежна від роздільної здатності, дозволяє нескінченно масштабувати зображення без втрати якості. Стандартизований W3C, формат SVG безпосередньо інтегрується з Web API, маніпуляціями DOM та CSS, що робить його основним форматом для адаптивних веб-додатків, іконок та динамічних візуалізацій.

Початок роботи з Aspose.SVG for .NET API

Якщо ви зацікавлені в розробці масштабованої векторної графіки та її застосуванні, встановіть наш гнучкий, високошвидкісний Aspose.SVG for .NET API із потужним набором інтерфейсів для C# та інших мов програмування .NET.
Встановіть із командного рядка як nuget install Aspose.SVG або через консоль диспетчера пакетів Visual Studio за допомогою Install-Package Aspose.SVG. Крім того, отримайте офлайн-інсталятор MSI або бібліотеки DLL у ZIP-файлі з завантажень. Aspose.SVG for .NET API – це окрема бібліотека, яка не залежить від будь-яке програмне забезпечення для обробки документів SVG.
Щоб отримати докладніші відомості про встановлення бібліотеки C# і системні вимоги, зверніться до документації Aspose.SVG.

Інші підтримувані векторизатори

Text to Vector (SVG Text)
JPG to SVG (JPEG Image)
PNG to SVG (Portable Network Graphics)
Image to SVG (Raster Image)
BMP to SVG (Microsoft Windows Bitmap)
GIF to SVG (Graphical Interchange Format)
TIFF to SVG (Tagged Image File Format)
Stencil Drawing (Stencil Maker)