Class SvgImage
Nazwa przestrzeń: Aspose.Imaging.FileFormats.Svg Zgromadzenie: Aspose.Imaging.dll (25.4.0)
Manipuluj pliki obrazowe Scalar Vector Graphics (SVG) za pomocą naszej API, wykorzystującmoc formatu tekstowego opartego na XML dla bezprzewodowej dostosowania i skalowalności.Łatwo ładuj obrazy SVG, rasterizuj elementy wektorowe i konwertuj do innych formatów,podczas kontroli poziomu kompresji, aby zoptymalizować rozmiar pliku i jakość dla swoich projektów.
[JsonObject(MemberSerialization.OptIn)]
public sealed class SvgImage : VectorImage, IDisposable, IObjectWithBounds, IObjectWithSizeF, IHasXmpData, IHasMetadata
Inheritance
object ← DisposableObject ← DataStreamSupporter ← Image ← VectorImage ← SvgImage
Implements
IDisposable , IObjectWithBounds , IObjectWithSizeF , IHasXmpData , IHasMetadata
Dziedziczeni członkowie
VectorImage.GetEmbeddedImages() , VectorImage.RemoveBackground() , VectorImage.RemoveBackground(RemoveBackgroundSettings) , VectorImage.Resize(int, int, ResizeType) , VectorImage.Resize(int, int, ImageResizeSettings) , VectorImage.RotateFlip(RotateFlipType) , VectorImage.Crop(Rectangle) , VectorImage.Rotate(float) , VectorImage.SizeF , VectorImage.WidthF , VectorImage.HeightF , VectorImage.Width , VectorImage.Height , Image.CanLoad(string) , Image.CanLoad(string, LoadOptions) , Image.CanLoad(Stream) , Image.CanLoad(Stream, LoadOptions) , Image.Create(ImageOptionsBase, int, int) , Image.Create(Image[]) , Image.Create(MultipageCreateOptions) , Image.Create(string[], bool) , Image.Create(string[]) , Image.Create(Image[], bool) , Image.GetFileFormat(string) , Image.GetFileFormat(Stream) , Image.GetFittingRectangle(Rectangle, int, int) , Image.GetFittingRectangle(Rectangle, int[], int, int) , Image.Load(string, LoadOptions) , Image.Load(string) , Image.Load(Stream, LoadOptions) , Image.Load(Stream) , Image.GetProportionalWidth(int, int, int) , Image.GetProportionalHeight(int, int, int) , Image.RemoveMetadata() , Image.CanSave(ImageOptionsBase) , Image.Resize(int, int) , Image.Resize(int, int, ResizeType) , Image.Resize(int, int, ImageResizeSettings) , Image.GetDefaultOptions(object[]) , Image.GetOriginalOptions() , Image.ResizeWidthProportionally(int) , Image.ResizeHeightProportionally(int) , Image.ResizeWidthProportionally(int, ResizeType) , Image.ResizeHeightProportionally(int, ResizeType) , Image.ResizeWidthProportionally(int, ImageResizeSettings) , Image.ResizeHeightProportionally(int, ImageResizeSettings) , Image.RotateFlip(RotateFlipType) , Image.Rotate(float) , Image.Crop(Rectangle) , Image.Crop(int, int, int, int) , Image.Save() , Image.Save(string) , Image.Save(string, ImageOptionsBase) , Image.Save(string, ImageOptionsBase, Rectangle) , Image.Save(Stream, ImageOptionsBase) , Image.Save(Stream, ImageOptionsBase, Rectangle) , Image.GetSerializedStream(ImageOptionsBase, Rectangle, out int) , Image.SetPalette(IColorPalette, bool) , Image.BitsPerPixel , Image.Bounds , Image.Container , Image.Height , Image.Palette , Image.UsePalette , Image.Size , Image.Width , Image.InterruptMonitor , Image.BufferSizeHint , Image.AutoAdjustPalette , Image.HasBackgroundColor , Image.FileFormat , Image.BackgroundColor , DataStreamSupporter.CacheData() , DataStreamSupporter.Save() , DataStreamSupporter.Save(Stream) , DataStreamSupporter.Save(string) , DataStreamSupporter.Save(string, bool) , DataStreamSupporter.DataStreamContainer , DataStreamSupporter.IsCached , DisposableObject.Dispose() , DisposableObject.Disposed , object.GetType() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()
Examples
Poniższy przykład pokazuje, jak przekonwertować obrazy svgz do swg fromat
string file = "example.svgz";
string baseFolder = System.IO.Path.Combine("D:", "Compressed");
string inputFile = System.IO.Path.Combine(baseFolder, file);
string outFile = inputFile + ".svg";
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(inputFile))
{
Aspose.Imaging.ImageOptions.VectorRasterizationOptions vectorRasterizationOptions = new Aspose.Imaging.ImageOptions.SvgRasterizationOptions() { PageSize = image.Size};
image.Save(outFile, new Aspose.Imaging.ImageOptions.SvgOptions() {VectorRasterizationOptions = vectorRasterizationOptions});
}
Poniższy przykład pokazuje, jak przekonwertować obrazy svg do swgz fromat
string file = "juanmontoya_lingerie.svg";
string baseFolder = System.IO.Path.Combine("D:", "Compressed");
string inputFile = System.IO.Path.Combine(baseFolder, file);
string outFile = inputFile + ".svgz";
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(inputFile))
{
Aspose.Imaging.ImageOptions.VectorRasterizationOptions vectorRasterizationOptions = new Aspose.Imaging.ImageOptions.SvgRasterizationOptions() { PageSize = image.Size};
image.Save(outFile, new Aspose.Imaging.ImageOptions.SvgOptions() {VectorRasterizationOptions = vectorRasterizationOptions, Compress = true});
}
Ten przykład pokazuje, jak pobrać obraz SVG z przepływu plików i rasterizować go do PNG.
string dir = "c:\\temp\\";
// Load an SVG image from a file stream.
using (System.IO.Stream stream = System.IO.File.OpenRead(dir + "test.svg"))
using (Aspose.Imaging.FileFormats.Svg.SvgImage svgImage = new Aspose.Imaging.FileFormats.Svg.SvgImage(stream))
{
// In order to rasterize SVG we need to specify rasterization options.
Aspose.Imaging.ImageOptions.SvgRasterizationOptions rasterizationOptions = new Aspose.Imaging.ImageOptions.SvgRasterizationOptions();
Aspose.Imaging.ImageOptions.PngOptions saveOptions = new Aspose.Imaging.ImageOptions.PngOptions();
saveOptions.VectorRasterizationOptions = rasterizationOptions;
svgImage.Save(dir + "test.output.png", saveOptions);
}
Poniższy przykład pokazuje, jak konwertować kompresowane obrazy (i EMZ,.wmz, *.svgz) do raster odat
string[] files = new[] {"example.emz", "example.wmz", "example.svgz"};
string baseFolder = System.IO.Path.Combine("D:","Compressed");
foreach (var file in files)
{
string inputFile = System.IO.Path.Combine(baseFolder, file);
string outFile = inputFile + ".png";
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(inputFile))
{
Aspose.Imaging.ImageOptions.VectorRasterizationOptions vectorRasterizationOptions = (Aspose.Imaging.ImageOptions.VectorRasterizationOptions)image.GetDefaultOptions(new object[] { Color.White, image.Width, image.Height });
image.Save(outFile, new Aspose.Imaging.ImageOptions.PngOptions(){VectorRasterizationOptions = vectorRasterizationOptions});
}
}
Constructors
SvgImage(strumień)
Instancja nowego obiektu klasy Aspose.Imaging.FileFormats.Svg.VgImage, wykorzystującokreśloną ścieżką do lokalizacji i ładowania obrazu. ten konstruktor ułatwiatworzenie obrazów SVG z zewnętrznych plików, umożliwiając bezprzewodoweintegracja do systemów oprogramowania i przepływów pracy.
public SvgImage(string path)
Parameters
path
string
Ścieżka do ładowania obrazu z i inicjalizować pixelów i palet danych z.
Exceptions
Droga jest zero.
SvgImage(Stream)
Tworzenie nowej instancji klasy Aspose.Imaging.FileFormats.Svg.VVgImage, ładowanie obrazuz dostarczonego przepływu. ten konstruktor umożliwia bezpośrednie ładowanie SVGobrazy ze strumieni, zwiększając elastyczność i efektywność w obsłudze obrazuzasobów w aplikacjach oprogramowania.
public SvgImage(Stream stream)
Parameters
stream
Stream
Strumień do ładowania obrazu z i inicjalizować pixelów i palet danych z.
Examples
Ten przykład pokazuje, jak pobrać obraz SVG z przepływu plików i rasterizować go do PNG.
string dir = "c:\\temp\\";
// Load an SVG image from a file stream.
using (System.IO.Stream stream = System.IO.File.OpenRead(dir + "test.svg"))
using (Aspose.Imaging.FileFormats.Svg.SvgImage svgImage = new Aspose.Imaging.FileFormats.Svg.SvgImage(stream))
{
// In order to rasterize SVG we need to specify rasterization options.
Aspose.Imaging.ImageOptions.SvgRasterizationOptions rasterizationOptions = new Aspose.Imaging.ImageOptions.SvgRasterizationOptions();
Aspose.Imaging.ImageOptions.PngOptions saveOptions = new Aspose.Imaging.ImageOptions.PngOptions();
saveOptions.VectorRasterizationOptions = rasterizationOptions;
svgImage.Save(dir + "test.output.png", saveOptions);
}
Exceptions
Strumień jest zero.
SvgImage(i int, int)
Instalacja nowego obiektu Aspose.Imaging.FileFormats.Svg.VVgImage z określoną szerokością iKonstruktor ten umożliwia deweloperom tworzenie obrazów SVG z wstępnie zdefiniowanymrozmiarów, ułatwiając dokładną kontrolę nad wielkością obrazu podczasz inicjalizacją .
public SvgImage(int width, int height)
Parameters
width
int
Szerokość obrazu.
height
int
Wysokość obrazu.
SvgImage(Opcje, int , int)
Tworzenie nowej instancji klasy Aspose.Imaging.FileFormats.Svg.VVgImage z określonymi SVGopcje, szerokość obrazu i parametry wysokości. ten konstruktor umożliwiaprogramistów do inicjalizacji obrazów SVG z opcjami i wymiarami dostosowanymi,zapewnienie elastyczności w zarządzaniu treścią i layoutem SVG.
public SvgImage(SvgOptions svgOptions, int width, int height)
Parameters
svgOptions
SvgOptions
Opcje SVG.
width
int
Szerokość obrazu.
height
int
Wysokość obrazu.
Properties
BitsPerPixel
Odtwarza bity na liczbę pikseli obrazu. ważne jest, aby zauważyć, żeparametr ten nie ma zastosowania do obrazów wektorowych, ponieważ nie są one mierzone wta właściwość dostarcza kluczowych informacji na temat koloru obrazuPomoc w wykonywaniu zadań przetwarzania i manipulacji.
public override int BitsPerPixel { get; }
Wartość nieruchomości
Exceptions
Invalid dla wektorowych obrazów
FileFormat
Odtwarza format pliku obrazu, zapewniając niezbędne metadane dlaPrzetwarzanie i sprawdzanie zgodności.Ten obiekt jest instrumentalny wokreślanie odpowiednich strategii dekodowania i kodowania w celu zarządzaniaDane obrazowe są skuteczne w różnych systemach i aplikacjach.
public override FileFormat FileFormat { get; }
Wartość nieruchomości
IsCached
Odtwarza wartość boolean wskazującą, czy dane obiektów są obecniecache, eliminując potrzebę dodatkowych operacji czytania danych.Właściwość zapewnia wgląd w aktualny status caching, optymalizując daneOdzyskiwanie i przetwarzanie przepływów pracy w celu zwiększenia wydajności i efektywności.
public override bool IsCached { get; }
Wartość nieruchomości
XmpData
Dostęp lub ustawienie danych XMP.
public XmpPacketWrapper XmpData { get; set; }
Wartość nieruchomości
Methods
CacheData()
Cache dane i gwarantuje, że nie będzie dalszego ładowania danych zPodstawowy Aspose.Imaging.DataStreamSupporter.PrzekierowanoOptymalizacja poprawia wydajność poprzez wyeliminowanie redukującego odzyskania danychoperacje, szczególnie korzystne w scenariuszach wymagających częstego dostępu doDane z obrazu.
public override void CacheData()
Crop(Rectangle)
Wyróżnia się określony rektangul.
public override void Crop(Rectangle rectangle)
Parameters
rectangle
Rectangle
z rektangulą .
GetDefaultOptions(Obiekt[])
Odzyskiwanie opcji domyślnych skonfigurowanych dla obrazu, zapewniając podstawową linięustawienia dla różnych operacji, takich jak rezygnacja, kompresja lub kodowanie.Metoda ma kluczowe znaczenie w zapewnieniu spójnego zachowania i standardów jakości.Zadanie przetwarzania obrazu bez konieczności wyraźnej parameteryzacji.
public override ImageOptionsBase GetDefaultOptions(object[] args)
Parameters
args
object
[ ]
i argumentów .
Returns
Opcje domyślne
GetImage2Export(Opcje ImageOptionsBase, Rectangle, IImageExporter)
Zdjęcie do eksportu.
protected override Image GetImage2Export(ImageOptionsBase optionsBase, Rectangle boundsRectangle, IImageExporter exporter)
Parameters
optionsBase
ImageOptionsBase
Opcje bazy obrazu.
boundsRectangle
Rectangle
Granice są rektangularne.
exporter
IImageExporter
z eksporterem .
Returns
Zdjęcie do eksportu
ReleaseManagedResources()
Upewnij się, że nie zarządzane zasoby nie są tutaj uwalniane, ponieważ mogą być już uwalniane.
protected override void ReleaseManagedResources()
Resize(int, int, resizeType)
Odtworzyć obraz, aby dostosować określone wymiary przy jednoczesnym zachowaniu jego wygląduMetoda ta zapewnia wygodny sposób dostosowania rozmiaru obrazubez zakłócania jej proporcji, zapewniając optymalne wyświetlanie lub przechowywaniew zależności od pożądanych wymiarów.
public override void Resize(int newWidth, int newHeight, ResizeType resizeType)
Parameters
newWidth
int
Nowa szerokość .
newHeight
int
Nowa wysokość .
resizeType
ResizeType
Ten rodzaj rewizji.
Rotate(Floty)
Rotacja obrazu wokół centrum.
public override void Rotate(float angle)
Parameters
angle
float
Kąt obrotowy w stopniach. wartości pozytywne będą obrotować zegarem.
SaveData(Stream)
Oszczędzaj dane.
protected override void SaveData(Stream stream)
Parameters
stream
Stream
Przepływ do przechowywania danych do.
SetPalette(IkolorPalette, Bool)
Zastosowanie określonej palety do obrazu, umożliwiając dostosowanie kolorówsystemów do celów estetycznych lub funkcjonalnych. ta metoda zapewnia elastycznośćw zarządzaniu paletami kolorów, aby dostosować się do różnych wymagań projektowania lub aplikacji.
public override void SetPalette(IColorPalette palette, bool updateColors)
Parameters
palette
IColorPalette
Płytka do ustawienia.
updateColors
bool
Jeśli ustawione na “prawdziwe” kolory zostaną zaktualizowane zgodnie z nową paletą; w przeciwnym razie indeksy kolorów pozostają niezmienione. zauważ, że niezmienione indeksy mogą zepsuć obraz na ładowaniu, jeśli niektóre indeksy nie mają odpowiednich wpisów palet.