Class SvgImage
Nombre del espacio: Aspose.Imaging.FileFormats.Svg Asamblea: Aspose.Imaging.dll (25.4.0)
Manipular los archivos de imagen Scalar Vector Graphics (SVG) con nuestra API, utilizandoEl poder del formato de texto basado en XML para la personalización y escalabilidad sin límites.fácilmente cargar imágenes SVG, rasterizar los elementos vector, y convertirse en otros formatos,mientras controla los niveles de compresión para optimizar el tamaño y la calidad del archivo para sus proyectos.
[JsonObject(MemberSerialization.OptIn)]
public sealed class SvgImage : VectorImage, IDisposable, IObjectWithBounds, IObjectWithSizeF, IHasXmpData, IHasMetadata
Inheritance
object ← DisposableObject ← DataStreamSupporter ← Image ← VectorImage ← SvgImage
Implements
IDisposable ,y, IObjectWithBounds ,y, IObjectWithSizeF ,y, IHasXmpData ,y, IHasMetadata
Miembros heredados
VectorImage.GetEmbeddedImages() ,y, VectorImage.RemoveBackground() ,y, VectorImage.RemoveBackground(RemoveBackgroundSettings) ,y, VectorImage.Resize(int, int, ResizeType) ,y, VectorImage.Resize(int, int, ImageResizeSettings) ,y, VectorImage.RotateFlip(RotateFlipType) ,y, VectorImage.Crop(Rectangle) ,y, VectorImage.Rotate(float) ,y, VectorImage.SizeF ,y, VectorImage.WidthF ,y, VectorImage.HeightF ,y, VectorImage.Width ,y, VectorImage.Height ,y, Image.CanLoad(string) ,y, Image.CanLoad(string, LoadOptions) ,y, Image.CanLoad(Stream) ,y, Image.CanLoad(Stream, LoadOptions) ,y, Image.Create(ImageOptionsBase, int, int) ,y, Image.Create(Image[]) ,y, Image.Create(MultipageCreateOptions) ,y, Image.Create(string[], bool) ,y, Image.Create(string[]) ,y, Image.Create(Image[], bool) ,y, Image.GetFileFormat(string) ,y, Image.GetFileFormat(Stream) ,y, Image.GetFittingRectangle(Rectangle, int, int) ,y, Image.GetFittingRectangle(Rectangle, int[], int, int) ,y, Image.Load(string, LoadOptions) ,y, Image.Load(string) ,y, Image.Load(Stream, LoadOptions) ,y, Image.Load(Stream) ,y, Image.GetProportionalWidth(int, int, int) ,y, Image.GetProportionalHeight(int, int, int) ,y, Image.RemoveMetadata() ,y, Image.CanSave(ImageOptionsBase) ,y, Image.Resize(int, int) ,y, Image.Resize(int, int, ResizeType) ,y, Image.Resize(int, int, ImageResizeSettings) ,y, Image.GetDefaultOptions(object[]) ,y, Image.GetOriginalOptions() ,y, Image.ResizeWidthProportionally(int) ,y, Image.ResizeHeightProportionally(int) ,y, Image.ResizeWidthProportionally(int, ResizeType) ,y, Image.ResizeHeightProportionally(int, ResizeType) ,y, Image.ResizeWidthProportionally(int, ImageResizeSettings) ,y, Image.ResizeHeightProportionally(int, ImageResizeSettings) ,y, Image.RotateFlip(RotateFlipType) ,y, Image.Rotate(float) ,y, Image.Crop(Rectangle) ,y, Image.Crop(int, int, int, int) ,y, Image.Save() ,y, Image.Save(string) ,y, Image.Save(string, ImageOptionsBase) ,y, Image.Save(string, ImageOptionsBase, Rectangle) ,y, Image.Save(Stream, ImageOptionsBase) ,y, Image.Save(Stream, ImageOptionsBase, Rectangle) ,y, Image.GetSerializedStream(ImageOptionsBase, Rectangle, out int) ,y, Image.SetPalette(IColorPalette, bool) ,y, Image.BitsPerPixel ,y, Image.Bounds ,y, Image.Container ,y, Image.Height ,y, Image.Palette ,y, Image.UsePalette ,y, Image.Size ,y, Image.Width ,y, Image.InterruptMonitor ,y, Image.BufferSizeHint ,y, Image.AutoAdjustPalette ,y, Image.HasBackgroundColor ,y, Image.FileFormat ,y, Image.BackgroundColor ,y, DataStreamSupporter.CacheData() ,y, DataStreamSupporter.Save() ,y, DataStreamSupporter.Save(Stream) ,y, DataStreamSupporter.Save(string) ,y, DataStreamSupporter.Save(string, bool) ,y, DataStreamSupporter.DataStreamContainer ,y, DataStreamSupporter.IsCached ,y, DisposableObject.Dispose() ,y, DisposableObject.Disposed ,y, object.GetType() ,y, object.ToString() ,y, object.Equals(object?) ,y, object.Equals(object?, object?) ,y, object.ReferenceEquals(object?, object?) ,y, object.GetHashCode()
Examples
El siguiente ejemplo muestra cómo convertir una imagen svgz en svg 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});
}
El siguiente ejemplo muestra cómo convertir una imagen svg en svgz 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});
}
Este ejemplo muestra cómo cargar una imagen SVG de un flujo de archivos y rasterizarla a 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);
}
El siguiente ejemplo muestra cómo convertir una imagen comprimida (.El EMZ,.wmz, *.svgz) para raster fromat
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(El string)
Instalar un nuevo objeto de la clase Aspose.Imaging.FileFormats.Svg.SvgImage, utilizando elel camino especificado para localizar y cargar la imagen.Este constructor facilita laCreación de ejemplos de imagen SVG de archivos externos, permitiendo laintegración en sistemas de software y flujos de trabajo.
public SvgImage(string path)
Parameters
path
string
El camino para cargar la imagen y iniciar los datos de píxeles y paletas con.
Exceptions
El camino es nulo.
SvgImage(Stream)
Crea una nueva instancia de la clase Aspose.Imaging.FileFormats.Svg.SvgImage, cargando la imagende la corriente proporcionada. este constructor permite la carga directa de SVGimágenes de los flujos, mejorando la flexibilidad y la eficiencia en el manejo de la imagenrecursos dentro de las aplicaciones de software.
public SvgImage(Stream stream)
Parameters
stream
Stream
El flujo para cargar la imagen y iniciar los datos de píxeles y paletas con.
Examples
Este ejemplo muestra cómo cargar una imagen SVG de un flujo de archivos y rasterizarla a 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
El flujo es nulo.
SvgImage(El int, int)
Instalar un nuevo objeto Aspose.Imaging.FileFormats.Svg.SvgImage con la anchura especificada yEste constructor permite a los desarrolladores crear imágenes SVG condimensiones, facilitando el control preciso sobre el tamaño de la imagen duranteLa iniciación.
public SvgImage(int width, int height)
Parameters
width
int
La imagen es amplia.
height
int
La altura de la imagen.
SvgImage(Título: Int Int Int Int Int)
Crea una nueva instancia de la clase Aspose.Imaging.FileFormats.Svg.SvgImage con SVG especificadoopciones, ancho de imagen, y parámetros de altura. este constructor permitelos desarrolladores para iniciar imágenes SVG con opciones y dimensiones personalizadas,proporcionar flexibilidad en la gestión del contenido y el diseño de SVG.
public SvgImage(SvgOptions svgOptions, int width, int height)
Parameters
svgOptions
SvgOptions
Las opciones de SVG.
width
int
Imagen de amplitud.
height
int
La altura de la imagen.
Properties
BitsPerPixel
Retire los bits por número de píxeles de la imagen. es importante tener en cuenta queEste parámetro no se aplica a las imágenes vectoras, ya que no se miden enEsta propiedad proporciona información crucial sobre el color de la imagenprofundidad, ayuda en las tareas de procesamiento y manipulación.
public override int BitsPerPixel { get; }
Valor de la propiedad
Exceptions
Invalida para imágenes vectoras
FileFormat
Retreará el formato de archivo de la imagen, proporcionando metadatos esenciales paracontroles de procesamiento y compatibilidad. esta propiedad es instrumental enDeterminar las estrategias de decodificación y codificación adecuadas para gestionar eldatos de imagen efectivamente a través de diferentes sistemas y aplicaciones.
public override FileFormat FileFormat { get; }
Valor de la propiedad
IsCached
Retreará un valor booleano que indica si los datos del objeto estáncache, eliminando la necesidad de operaciones adicionales de lectura de datos.La propiedad proporciona una visión del estado de caching actual, optimizando los datosRecuperación y procesamiento de flujos de trabajo para mejorar el rendimiento y la eficiencia.
public override bool IsCached { get; }
Valor de la propiedad
XmpData
Obtener o establecer datos XMP.
public XmpPacketWrapper XmpData { get; set; }
Valor de la propiedad
Methods
CacheData()
Cache los datos y garantiza que no habrá más cargas de datos deel subyacente Aspose.Imaging.DataStreamSupporter.DataStreamContainer.Optimización mejora el rendimiento eliminando la recuperación redundante de datosoperaciones, especialmente beneficiosas en los escenarios que requieren acceso frecuente a laDatos de imagen.
public override void CacheData()
Crop(Rectangle)
Escribe el rectángulo especificado.
public override void Crop(Rectangle rectangle)
Parameters
rectangle
Rectangle
El rectángulo.
GetDefaultOptions(Objeto[])
Retirar las opciones predefinidas configuradas para la imagen, proporcionando una baseconfiguración para varias operaciones, como la resignación, la compresión o el codificación.El método es fundamental para garantizar un comportamiento y estándares de calidad consistentes entreTareas de procesamiento de imágenes sin la necesidad de parameterización explícita.
public override ImageOptionsBase GetDefaultOptions(object[] args)
Parameters
args
object
[][]
Los argumentos.
Returns
Opciones defectuosas
GetImage2Export(ImageOptionsBase, Rectangle, IImageExporter)
Tiene la imagen para exportar.
protected override Image GetImage2Export(ImageOptionsBase optionsBase, Rectangle boundsRectangle, IImageExporter exporter)
Parameters
optionsBase
ImageOptionsBase
La base de opciones de imagen.
boundsRectangle
Rectangle
Los límites rectangulares.
exporter
IImageExporter
El exportador.
Returns
La imagen para exportar
ReleaseManagedResources()
Asegúrese de que los recursos no gestionados no se liberan aquí, ya que pueden haber sido ya liberados.
protected override void ReleaseManagedResources()
Resize(int, int, resizeType)
Recuperar la imagen para adaptarse a las dimensiones especificadas mientras conserva su aspectoEste método proporciona una manera conveniente de ajustar el tamaño de la imagensin distorsionar sus proporciones, garantizando la visualización o el almacenamiento óptimosegún las dimensiones deseadas.
public override void Resize(int newWidth, int newHeight, ResizeType resizeType)
Parameters
newWidth
int
La nueva amplitud.
newHeight
int
La nueva altura.
resizeType
ResizeType
El tipo de residuos.
Rotate(float)
Imagen rotativa alrededor del centro.
public override void Rotate(float angle)
Parameters
angle
float
El ángulo de rotación en grados. valores positivos rotarán de manera horaria.
SaveData(Stream)
ahorrar los datos.
protected override void SaveData(Stream stream)
Parameters
stream
Stream
El flujo para salvar los datos a.
SetPalette(Página web, bool)
Aplicar una paleta especificada a la imagen, permitiendo la personalización de los colorespara fines estéticos o funcionales.Este método proporciona flexibilidaden la gestión de paletas de color para atender a diferentes requisitos de diseño o aplicación.
public override void SetPalette(IColorPalette palette, bool updateColors)
Parameters
palette
IColorPalette
La paleta se establece.
updateColors
bool
si se ha ajustado a los colores ‘verdaderos’ se actualizará de acuerdo con la nueva paleta; de lo contrario, los índices de color permanecerán inalterados.Tenga en cuenta que los índices inalterados pueden romper la imagen en carga si algunos índices no tienen entradas de paleta correspondientes.