Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.
Векторизация – это процесс преобразования растровых изображений в векторную графику, в которой используются такие элементы, как кривые Безье, сплайны и линии. Процесс включает в себя как минимум квантование цвета, определение границ одноцветных фигур и их аппроксимацию кривыми Безье или многоугольниками, а также улучшение качества контура за счет подавления шума. Результат сохраняется в векторном формате изображения, например, в файле SVG.
Aspose.SVG for .NET предоставляет два мощных подхода для преобразования растровых изображений в формат SVG с помощью векторизации:
В этой статье рассматриваются основные понятия и примеры преобразования растровых изображений, таких как JPG, PNG, BMP, TIFF, GIF и ICO в SVG графику с помощью методов Converter.ConvertImageToSVG().
Чтобы узнать больше о том, как преобразовывать изображения в векторную графику с помощью API ImageVectorization, обратитесь к главе Векторизация изображений и текста. Вы найдете описание процесса векторизации изображения, применение алгоритмов и параметров векторизации, а также C# примеры использования методов Vectorize().
Преобразование растровых изображений в SVG позволяет создавать масштабируемую, не зависящую от разрешения графику, которая остается четкой при любом размере, что делает ее идеальной для веб-дизайна и других приложений. В следующем примере показано, как преобразовать растровое PNG изображение в SVG с помощью метода ConvertImageToSVG():
configuration, imageFile, outputFile) выполняет векторизацию исходного изображения, преобразуя его в масштабируемый формат SVG и сохраняя по указанному пути.Добавьте следующие пространства имен:
1using Aspose.Svg;
2using System.IO;
3using Aspose.Svg.Converters;
4using Aspose.Svg.ImageVectorization;Реализация преобразования изображения в SVG:
1// Convert Image to SVG using C#
2
3// Prepare paths for a source image file and output SVG file
4string imageFile = Path.Combine(DataDir, "flower-pink.png");
5string outputFile = Path.Combine(OutputDir, "flower-pink.svg");
6
7// Create a configuration object
8ImageVectorizerConfiguration configuration = new ImageVectorizerConfiguration
9{
10 PathBuilder =
11 new BezierPathBuilder
12 {
13 TraceSmoother = new ImageTraceSmoother(3),
14 ErrorThreshold = 5,
15 MaxIterations = 5
16 },
17 ColorsLimit = 15,
18 LineWidth = 2
19};
20
21// Convert Image to SVG
22Converter.ConvertImageToSVG(configuration, imageFile, outputFile);На рисунке показан результат векторизации изображения: а) исходное PNG-изображение; б) полученное SVG:

Чтобы получить оптимальные результаты, можно поэкспериментировать с различными параметрами конфигурации. Например, более низкий предел цвета и более высокое сглаживание создают более абстрактное и стилизованное изображение, в то время как более высокие настройки точности сохраняют больше деталей за счет сложности.
Некоторые свойства класса ImageVectorizerConfiguration:
ColorsLimit – устанавливает максимальное количество цветов, используемых для квантования изображения. Уменьшение его значения упрощает вывод и уменьшает размер файла.LineWidth – управляет визуальной толщиной трассируемых краев.Свойства класса BezierPathBuilder:
TraceSmoother – регулирует уровень сглаживания для кривых и линий.ErrorThreshold и MaxIterations – эти параметры влияют на точность и производительность пути.Aspose.SVG for .NET поддерживает как файловые, так и потоковые рабочие процессы, что делает его гибким для настольных, веб- и сервис-ориентированных приложений. В следующем примере показано, как применить метод
ConvertImageToSVG(configuration, inputStream, outputFile) для преобразования JPG изображения в SVG:
1// Convert raster image JPG to vector SVG using C#
2
3// Prepare input and output
4string imagePath = Path.Combine(DataDir, "tulip.jpg");
5string outputFile = Path.Combine(OutputDir, "tulip.svg");
6
7// Open the image as a FileStream
8using (FileStream inputStream = new FileStream(imagePath, FileMode.Open, FileAccess.Read))
9{
10 // Create vectorization configuration
11 ImageVectorizerConfiguration configuration = new ImageVectorizerConfiguration
12 {
13 PathBuilder = new BezierPathBuilder
14 {
15 TraceSmoother = new ImageTraceSmoother(1),
16 ErrorThreshold = 10,
17 MaxIterations = 1
18 },
19 ColorsLimit = 30,
20 LineWidth = 1
21 };
22
23 // Perform conversion from image stream to SVG
24 Converter.ConvertImageToSVG(configuration, inputStream, outputFile);
25}
26
27Console.WriteLine("Image converted to SVG successfully.");На рисунке показан результат векторизации изображения: а) исходное JPG-изображение; б) полученное SVG:

ConvertImageToSVG() для быстрого преобразования растровых изображений в SVG с использованием пользовательских настроек.ImageVectorizerConfiguration. Даже при значениях по умолчанию преобразование дает хороший результат SVG. Однако тонкая настройка этих параметров часто необходима для достижения желаемого баланса между точностью и простотой.Смотрите также
Aspose.SVG предлагает бесплатный онлайн Image в SVG Конвертер, который работает на любой платформе и обеспечивает точное и эффективное преобразование. Используя это приложение, вы можете применить набор опций для достижения идеального результата. Сэкономьте свое время и воспользуйтесь бесплатным конвертером изображений в SVG, чтобы получить все преимущества векторной графики!
Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.