Konwertuj SVG

Obrazy są wszędzie w Internecie. Przyjrzyjmy się pracy z kilkoma popularnymi formatami obrazów, w tym obrazami EMF, WMF i SVG. W tym artykule rozważysz kompresję obrazów wektorowych EMF, WMF i SVG odpowiednio do EMZ, WMZ i SVGZ. Ponadto nauczymy się również, jak konwertować obrazy wektorowe EMF, WMF i SVG na obrazy rastrowe, takie jak PNG, przy użyciu języka C#. Poniżej przedstawiono przypadki użycia, które będziemy badać:

Pliki obrazów wektorowych są często bardzo duże, więc kompresja i dekompresja takich obrazów jest pomocna, gdy trzeba przesyłać pliki przez sieć. Nauczmy się konwersji z Aspose.Imaging for .NET API.

Konwertuj EMF na EMZ za pomocą C#

Plik EMZ jest w rzeczywistości skompresowaną formą obrazu EMF. Możesz przekonwertować EMF na EMZ, wykonując poniższe czynności:

  1. Załaduj źródłowy obraz EMF
  2. Zainicjuj obiekt VectorRasterizationOptions.
  3. Zapisz obraz, określając EmfOptions

Poniższy fragment kodu pokazuje, jak przekonwertować EMF na EMZ za pomocą C#:

string file = "input.emf";
string inputFile = dataDir + file;
string outFile = inputFile + ".emz";
using (var image = Image.Load(inputFile))
{
    VectorRasterizationOptions vectorRasterizationOptions = new EmfRasterizationOptions() { PageSize = image.Size };
    image.Save(outFile, new EmfOptions() { VectorRasterizationOptions = vectorRasterizationOptions, Compress = true });
}

Konwertuj EMZ na EMF za pomocą C#

Jeśli otrzymałeś skompresowany plik EMZ, a następnie chcesz przekonwertować EMZ na EMF, wykonaj poniższe czynności:

  1. Załaduj źródłowy plik EMZ
  2. Zainicjuj obiekt EmfRasterizationOptions.
  3. Zapisz obraz podczas określania EmfOptions

Poniższy fragment kodu wyjaśnia, jak przekonwertować EMZ na EMF przy użyciu języka C#:

string file = "example.emz";
string inputFile = dataDir + file;
string outFile = inputFile + ".emf";
using (var image = Image.Load(inputFile))
{
    VectorRasterizationOptions vectorRasterizationOptions = new EmfRasterizationOptions { PageSize = image.Size };
    image.Save(outFile, new EmfOptions { VectorRasterizationOptions = vectorRasterizationOptions });
}

Konwertuj WMF na WMZ za pomocą C#

Możesz kompresować obrazy WMF za pomocą Aspose.Imaging for .NET API. Proces kompresji konwertuje WMF na WMZ, wykonując poniższe kroki:

  1. Załaduj źródłowy plik WMF
  2. Zainicjuj obiekt WmfRasterizationOptions.
  3. Zapisz obraz za pomocą WmfOptions

Poniższy fragment kodu pokazuje, jak przekonwertować WMF na WMZ za pomocą C#:

string file = "castle.wmf";
string inputFile = dataDir + file;
string outFile = inputFile + ".wmz";
using (var image = Image.Load(inputFile))
{
    VectorRasterizationOptions vectorRasterizationOptions = new WmfRasterizationOptions() { PageSize = image.Size };
    image.Save(outFile, new WmfOptions() { VectorRasterizationOptions = vectorRasterizationOptions, Compress = true });
}

Konwertuj WMZ na WMF za pomocą C#

Jak już nauczyliśmy się kompresować obraz WMF. Aspose.Imaging for .NET API pozwala rozpakować pliki WMZ i przekonwertować je na plik WMF. W celu konwersji należy wykonać następujące kroki:

  1. Załaduj wejściowy plik WMZ
  2. Zadeklaruj instancję klasy WmfRasterizationOptions.
  3. Zapisz obraz wyjściowy jako plik WMF

Poniższy fragment kodu pokazuje, jak przekonwertować WMZ na WMF przy użyciu języka C#:

string file = "example.wmz";
string inputFile = dataDir + file;
string outFile = inputFile + ".wmf";
using (var image = Image.Load(inputFile))
{
    VectorRasterizationOptions vectorRasterizationOptions = new WmfRasterizationOptions() { PageSize = image.Size };
    image.Save(outFile, new WmfOptions() { VectorRasterizationOptions = vectorRasterizationOptions });
}

Konwertuj SVG na SVGZ za pomocą C#

Obrazy SVG są szeroko stosowane do wyświetlania złożonej grafiki o wysokiej jakości. Możesz skompresować takie obrazy wektorowe i przekonwertować SVG na SVGZ, wykonując poniższe czynności:

  1. Załaduj wejściowy plik SVG
  2. Zainicjuj obiekt VectorRasterizationOptions.
  3. Zapisz wyjściowy obraz SVGZ za pomocą SvgOptions

Poniższy fragment kodu pokazuje, jak przekonwertować SVG na SVGZ przy użyciu języka C#:

string file = "Example.svg";
string inputFile = dataDir + file;
string outFile = inputFile + ".svgz";
using (var image = Image.Load(inputFile))
{
    VectorRasterizationOptions vectorRasterizationOptions = new SvgRasterizationOptions() { PageSize = image.Size };
    image.Save(outFile, new SvgOptions() { VectorRasterizationOptions = vectorRasterizationOptions, Compress = true });
}

Konwertuj SVGZ na SVG za pomocą C#

Możesz rozpakować plik SVGZ i przekonwertować SVGZ na SVG, wykonując poniższe proste czynności:

  1. Załaduj wejściowy plik SVGZ
  2. Określ instancję SvgRasterizationOptions.
  3. Zapisz obraz SVG za pomocą SvgOptions

Poniższy fragment kodu pokazuje, jak przekonwertować SVGZ na SVG przy użyciu języka C#:

string file = "example.svgz";
string inputFile = dataDir + file;
string outFile = inputFile + ".svg";
using (var image = Image.Load(inputFile))
{
    VectorRasterizationOptions vectorRasterizationOptions = new SvgRasterizationOptions() { PageSize = image.Size };
    image.Save(outFile, new SvgOptions() { VectorRasterizationOptions = vectorRasterizationOptions });
}

Więc nauczyłeś się, jak kompresować i dekompresować obrazy w formacie wektorowym, w tym obrazy EMZ, WMZ i SVGZ. Przejdźmy do przodu i dowiedzmy się, jak przekonwertować takie pliki obrazów na obrazy rastrowe.

Konwertuj EMZ na PNG za pomocą C#

EMZ to skompresowana forma obrazu EMF. Możesz bezpośrednio przekonwertować go do formatu obrazu rastrowego, takiego jak PNG lub JPG. Nie musisz najpierw dekompresować obrazu, a następnie go konwertować. Wykonaj poniższe kroki, aby przekonwertować obraz EMZ na PNG:

  1. Załaduj wejściowy obraz EMZ
  2. Zainicjuj instancję klasy VectorRasterizationOptions.
  3. Zapisz wstawiony obraz PNG za pomocą PngOptions

Poniższy fragment kodu pokazuje, jak przekonwertować EMZ na obraz PNG za pomocą C#:

string file = "example.emz";           
string inputFile = dataDir + file;
string outFile = inputFile + ".png";
using (Image image = Image.Load(inputFile))
{
    VectorRasterizationOptions vectorRasterizationOptions = (VectorRasterizationOptions)image.GetDefaultOptions(new object[] { Color.White, image.Width, image.Height });
    image.Save(outFile, new PngOptions() { VectorRasterizationOptions = vectorRasterizationOptions });
}

Konwertuj WMZ na PNG za pomocą C#

Teraz nauczmy się konwersji skompresowanych plików WMF, WMZ, bezpośrednio do PNG. Poniższe kroki konwertują WMZ do PNG:

  1. Załaduj źródłowy plik obrazu WMZ
  2. Zadeklaruj obiekt klasy VectorRasterizationOptions.
  3. Zapisz plik obrazu PNG przy użyciu klasy PngOptions.

Poniższy fragment kodu wykonuje następujące kroki i pokazuje, jak przekonwertować WMZ na PNG za pomocą C#:

string file = "example.wmz";           
string inputFile = dataDir + file;
string outFile = inputFile + ".png";
using (Image image = Image.Load(inputFile))
{
    VectorRasterizationOptions vectorRasterizationOptions = (VectorRasterizationOptions)image.GetDefaultOptions(new object[] { Color.White, image.Width, image.Height });
    image.Save(outFile, new PngOptions() { VectorRasterizationOptions = vectorRasterizationOptions });
}

Konwertuj SVGZ na PNG za pomocą C#

Ekscytująca funkcja konwersji SVGZ do PNG została wprowadzona na podstawie kilku próśb naszych klientów. Ta funkcja umożliwia wydajną konwersję obrazów SVGZ do formatu PNG z zachowaniem wysokiej wierności. Wszystko, co musisz zrobić, to wykonać poniższe czynności:

Poniższy fragment kodu opiera się na tych krokach, które wyjaśniają, jak przekonwertować SVGZ na PNG za pomocą C#:

string file = "example.svgz";           
string inputFile = dataDir + file;
string outFile = inputFile + ".png";
using (Image image = Image.Load(inputFile))
{
    VectorRasterizationOptions vectorRasterizationOptions = (VectorRasterizationOptions)image.GetDefaultOptions(new object[] { Color.White, image.Width, image.Height });
    image.Save(outFile, new PngOptions() { VectorRasterizationOptions = vectorRasterizationOptions });
}

Wniosek

Omówiliśmy kompresję i dekompresję formatów obrazów wektorowych, które są pomocne przy przesyłaniu plików. Podejście to jest również odpowiednie, gdy chcesz zarchiwizować takie obrazy. Na przykład możesz skompresować takie obrazy wektorowe przed archiwizacją, a później rozpakować zgodnie z własnymi wymaganiami. Co więcej, zbadaliśmy również konwersję skompresowanych obrazów wektorowych na obrazy rastrowe za pomocą Aspose.Imaging for .NET API. Ponadto możesz zapoznać się z API Reference i API Documentation. W razie jakichkolwiek wątpliwości skontaktuj się z nami na Bezpłatnym forum pomocy technicznej.

Zobacz też