Bildvektorisierung – C#-Code und Online-Vektorisierer
Sind Sie bereit, zum Vektorzeichnen überzugehen?
Was ist Bildvektorisierung?
Die Bildvektorisierung ist der Prozess der Umwandlung von Bitmap-Bildern in Vektorgrafiken – Bezier-Kurven, Splines und Linien. Die Vektorisierung ist hilfreich, da das Bild beim Vergrößern nicht verpixelt. Skalierung ohne Qualitätsverlust, geringe Dateigröße und Animationsunterstützung – das sind nur einige Vorteile von vektorisierten Bildern. Egal, ob Sie sich für Malerei, Design, Kunst, Druck, Architektur oder Webentwicklung interessieren, Vektorgrafiken sind ein wesentlicher Bestandteil des Berufs. Auf der anderen Seite können Sie einfach mit Bildern experimentieren und lustige Vektorisierungseffekte erzielen. In diesem Artikel sehen wir uns an, wie Sie Bilder in C# in Vektorgrafiken konvertieren oder einen Online-Bildvektorisierer verwenden.
Online-Bildvektorisierer
Sind Sie bereit, vom Malen mit Pixeln zum Zeichnen mit Vektoren überzugehen? Image Vectorizer wurde entwickelt, um Rasterbilder in Vektorgrafiken umzuwandeln, die auf geometrischen Formen basieren, die aus Bezier-Kurven und -Linien bestehen. Alle Vektorgrafikelemente werden nach der Vektorisierung in SVG-Dateien gespeichert. Image Vectorizer unterstützt JPEG, JPG, PJP, PJPEG, PNG, BMP, ICO, GIF, TIFF, WEBP, XBM und andere Bitmap-Formate. Sie können die vektorisierte SVG-Datei interaktiv verwalten, indem Sie Steuerelemente verwenden, die mit den richtigen Vektorisierungsoptionen verknüpft sind. Wandeln Sie Ihre Bilder jetzt in skalierbare und klare Vektorgrafiken um!
Wie verwende ich den Bildvektorisierer?
- Laden Sie zunächst das Rasterbild aus einem lokalen Dateisystem im JPEG-, JPG-, PJP-, PJPEG-, WEBP-, PNG-, BMP-, ICO-, GIF-, TIFF-, XBM- oder anderen Bitmap-Format. Sie sehen drei Fenster – Source Image, Quantized Image und Vectorized Image – mit der Vorschau der ursprünglichen, farbquantisierten und vektorisierten Bilder.
- Image Vectorizer konvertiert Image in Vektor mit Standardeinstellungen und Sie können vektorisiertes Image als SVG-Datei herunterladen. Aber um ein besseres Ergebnis zu erzielen, können Sie die Quantisierungs- und Vektorisierungsprozesse mit zwei Einstellungsseitenleisten handhaben. Klicken Sie auf die Schaltfläche „Quantize“, um die Quantisierungseinstellungen anzuwenden, klicken Sie auf die Schaltfläche „Vectorize“, um die Vektorisierungseinstellungen anzuwenden und Image in SVG umzuwandeln.
- Klicken Sie auf die Schaltfläche „Download“, um das Ergebnis zu erhalten.
Image Vectorizer wandelt Raster-Bitmap-Bilder in Vektorgrafiken um, die aus Umrissen aufgebaut sind. Der Vektorisierungsalgorithmus umfasst die nächsten Schritte: Farbquantisierung, Konturverfolgung, Spurglättung, Spurvereinfachung und Erstellen von SVG-Pfadelementen aus den Spuren. Wende benutzerdefinierte Einstellungen an, um das beste Image-Vektorisierungsergebnis zu erhalten.
Seitenleiste Quantization Options
Die Farbquantisierung ist ein Prozess zur Auswahl einer begrenzten Anzahl von Farben, die in einem Bild verwendet werden sollen. Es wird angewendet, wenn die Farbinformationen eines Bildes reduziert werden sollen. Die Farbquantisierung ist ein sehr komplexer Prozess, an dem eine Reihe von Faktoren beteiligt sind. Dies kann unter Verwendung verschiedener Algorithmen implementiert werden. Jeder der Algorithmen bestimmt, welche Farben aus dem größeren Farbsatz im neuen Bild verbleiben und wie die verworfenen Farben den verbleibenden zugeordnet werden.
- colors - gewünschte Palettengröße;
- method - Histogrammmethoden, die verschiedene Farbquantisierungsalgorithmen implementieren;
- minHueCols - ist ein Parameter, der mit Farbverläufen arbeitet;
- scale - oder Skalierungsfaktor wird für eine feinere oder gröbere Abtastung der Farben in der Ebene eingestellt;
- grayscale - sie können das Bild in Graustufen umwandeln, indem Sie auf das Kontrollkästchen klicken.
Seitenleiste Vectorization Options
- threshold - ist verantwortlich für die Einstellung der Pixelanzahl zur Markierung der Kontur;
- severity - wirkt sich auf die Glättung von Konturen aus und bestimmt die Ausdehnung der Region, die vom Abfragepunkt des Nearest-Neighbor-Ansatzes betrachtet wird;
- line-width - beeinflusst die Breite der Linien zum Markieren der Konturen;
- stencil - verwandelt ein gewöhnliches Bild oder Foto in ein Umrissbild, das als Schablone für Graffiti-ähnliche Effekte verwendet werden kann.
- trace paths - sie können die Punkte in einer Kurve anzeigen, die für das Erstellen von Pfadsegmenten verantwortlich sind.
Vektorgrafiken eignen sich am besten zum Erstellen von Logos, Symbolen, Seitenlayouts, Karten, Grafiken, Strichzeichnungen, Illustrationen, technischen Zeichnungen und mehr. Es ist nicht das am besten geeignete Format für Halbtonbilder mit Farbübergängen oder die Bearbeitung von Fotos. Das Vektorisieren von Fotos kann jedoch zu beeindruckenden künstlerischen Effekten führen, die interessant und nützlich sein können.
So vektorisieren Sie Bilder in C#
Aspose.SVG for .NET API bietet eine Hochgeschwindigkeits-C#-Bibliothek, die Sie für verschiedene SVG-Parsing-Aufgaben verwenden können . Der Namespace ImageVectorization enthält Klassen und Schnittstellen zur Implementierung des Bildvektorisierungsprozesses und arbeitet mit verschiedenen Vorverarbeitungsoptionen für Bilder, bevor sie gespeichert werden im Vektorformat. Die Verarbeitung umfasst die Steuerung der folgenden Vektorisierungsoptionen: TraceSimplifier, TraceSmoother, PathBuilder usw.
Bildvektorisierung in C#
// Initialize an instance of the ImageVectorizer class
var vectorizer = new ImageVectorizer
{
Configuration =
{
// Set severity
TraceSmoother = new ImageTraceSmoother(3),
// Set tolerance
TraceSimplifier = new ImageTraceSimplifier(0.3f),
// Set tension
PathBuilder = new PathBuilder(0.5f),
}
};
// Vectorize image from the specified file
using var document = vectorizer.Vectorize(InputFolder + "image.png");
// Save vectorized Image as SVG file
document.Save(OutputFolder + "image.svg");
Schritte zum Vektorisieren von Bildern in C#
- Initialisieren Sie eine Instanz der Klasse
ImageVectorizer.
Verwenden Sie einen der ImageVectorizer()-Konstruktoren und geben Sie Konfigurationseigenschaften an.
- Die Eigenschaft TraceSmoother stellt die Spur weicher ein. Es wird verwendet, um Fragmente von Konturen zu glätten.
- Die Eigenschaft TraceSimplifier legt die Ablaufverfolgung vereinfacht fest. Als Ergebnis wird die Spurkurve aus Liniensegmenten mit weniger (oder größeren) Punkten aufgebaut.
- Die Eigenschaft PathBuilder legt den Builder für SVG-Pfadsegmente fest und beeinflusst, wie stark sich die Kurve an den Kontrollpunkten krümmt.
- Bild aus der angegebenen Datei vektorisieren. Die Methode Vectorize() nimmt den Pfad zur Bilddatei und gibt ein SVGDocument zurück.
- Speichern Sie das vektorisierte Bild als SVG-Datei. Verwenden Sie die Methode Save() und übergeben Sie ihr den Ausgabepfad.
Bildvektorisierung in der Dokumentation
Skalierbare Vektorgrafiken werden derzeit häufig zum Rendern von Webgrafiken verwendet. Im Vergleich zu Bitmaps können Vektorgrafiken scharfe Bilder erstellen, die auf jede beliebige Größe skaliert werden können, sie sind ideal zum Zeichnen jeder Art von Webillustration, einschließlich Symbolen, Diagrammen, Diagrammen und mehr. Im Dokumentationskapitel
Vectorization – Basic Overview,
finden Sie eine Beschreibung der Prozess der Bildvektorisierung.
- Workflow zur Bildvektorisierung – Hier finden Sie Informationen zur Bildvektorisierung, eine Beschreibung des Bildvektorisierungsprozesses und der Vektorisierungsoptionen, erfahren Sie, wie Sie Rasterbilder wie PNG, JPG, BMP, TIFF, GIF, ICO in ein SVG-Dokument vektorisieren.
- Bildvektorisierungsbeispiele – Sie werden einige C#-Beispiele betrachten die die ImageVectorization-Funktionalitäten und die Auswirkung von Konfigurationseigenschaften auf das Vektorisierungsergebnis demonstrieren.
FAQ
1. Wie kann ich Image vektorisieren?
Mit Aspose.SVG können Sie Image auf beliebige Weise in SVG konvertieren – online oder programmgesteuert. Beispielsweise können Sie Image in Echtzeit mit Online Image Vectorizer vektorisieren, der Ihre Bilder schnell und mit hoher Qualität konvertiert. Andererseits können Sie Aspose.SVG für die .NET-API verwenden, um Image programmgesteuert zu vektorisieren.
2. Was ist eine Raster-zu-Vektor-Konvertierung?
Der Prozess der Bildkonvertierung von Raster zu Vektor wird als Bildvektorisierung bezeichnet. Es ist ein komplexer Rechenprozess, der ein aus Pixeln bestehendes Bitmap-Bild in ein Vektorbild umwandelt, das aus Linien, Kurven und anderen geometrischen Formen besteht.
Erste Schritte mit der Aspose.SVG for .NET API
Wenn Sie an der Entwicklung skalierbarer Vektorgrafiken und deren Anwendung interessiert sind, installieren Sie unser flexibles, schnelles Aspose.SVG for .NET API mit einem leistungsstarken Satz von Schnittstellen für C# und andere .NET-Programmiersprachen.Installieren Sie über die Befehlszeile als
nuget install Aspose.SVG
oder über die Paket-Manager-Konsole von Visual Studio mit Install-Package Aspose.SVG
.
Alternativ können Sie das Offline-MSI-Installationsprogramm oder DLLs in einer ZIP-Datei von
downloads
herunterladen. Aspose.SVG für die .NET-API ist eine eigenständige Bibliothek und nicht davon abhängig jede Software für die Verarbeitung von SVG-Dokumenten.Weitere Einzelheiten zur Installation der C#-Bibliothek und zu den Systemanforderungen finden Sie in der Aspose.SVG-Dokumentation.
Andere unterstützte Vektorisierer
Sparen Sie Zeit und testen Sie diese Bildvektorisierer, um alle Vorteile von Vektorgrafiken zu nutzen!