Class WmfImage

Class WmfImage

Nom dels espais: Aspose.Imaging.FileFormats.Wmf Assemblea: Aspose.Imaging.dll (25.4.0)

Manipulació d’imatges de Microsoft Windows Metafile (WMF) amb la nostra APItractar les dades de vector i bitmap emmagatzemades en els registres de longitud variable.Recuperar, girar i flip imatges amb facilitat mentre s’estableixen paletes d’imatge personalitzades.Convertir els arxius WMF en formats compresos o guardar-los en format d’imatge de rasterper a un ús versàtil a totes les plataformes i aplicacions.

[JsonObject(MemberSerialization.OptIn)]
public class WmfImage : MetaImage, IDisposable, IObjectWithBounds, IObjectWithSizeF

Inheritance

object DisposableObject DataStreamSupporter Image VectorImage MetaImage WmfImage

Implements

IDisposable , IObjectWithBounds , IObjectWithSizeF

Membres heretats

MetaImage.GetUsedFonts() , MetaImage.GetMissedFonts() , MetaImage.ResizeCanvas(Rectangle) , MetaImage.GetCanNotSaveMessage(ImageOptionsBase) , MetaImage.SaveData(Stream) , MetaImage.Records , 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.Modify(RectangleF, float, float, 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.UpdateContainer(Image) , Image.GetCanNotSaveMessage(ImageOptionsBase) , Image.GetFitRectangle(Rectangle) , Image.GetImage2Export(ImageOptionsBase, Rectangle, IImageExporter) , Image.GetFitRectangle(Rectangle, int[]) , Image.OnPaletteChanged(IColorPalette, IColorPalette) , Image.OnPaletteChanging(IColorPalette, IColorPalette) , Image.ReleaseManagedResources() , 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.timeout , DataStreamSupporter.CacheData() , DataStreamSupporter.Save() , DataStreamSupporter.Save(Stream) , DataStreamSupporter.Save(string) , DataStreamSupporter.Save(string, bool) , DataStreamSupporter.SaveData(Stream) , DataStreamSupporter.ReleaseManagedResources() , DataStreamSupporter.OnDataStreamContainerChanging(StreamContainer) , DataStreamSupporter.DataStreamContainer , DataStreamSupporter.IsCached , DisposableObject.Dispose() , DisposableObject.ReleaseManagedResources() , DisposableObject.ReleaseUnmanagedResources() , DisposableObject.VerifyNotDisposed() , DisposableObject.Disposed , object.GetType() , object.MemberwiseClone() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()

Examples

L’exemple següent mostra com convertir una imatge wmz a un format de Wmf

string file = "example.wmz";
                                                                                string baseFolder = System.IO.Path.Combine("D:", "Compressed");
                                                                                string inputFile = System.IO.Path.Combine(baseFolder, file);
                                                                                string outFile = inputFile + ".wmf";
                                                                                using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(inputFile))
                                                                                {
                                                                                    Aspose.Imaging.ImageOptions.VectorRasterizationOptions vectorRasterizationOptions = new Aspose.Imaging.ImageOptions.WmfRasterizationOptions() { PageSize = image.Size};
                                                                                    image.Save(outFile, new Aspose.Imaging.ImageOptions.WmfOptions() {VectorRasterizationOptions = vectorRasterizationOptions});
                                                                                }

L’exemple següent mostra com convertir una imatge wmf a un format Wmz

string file = "castle.wmf";
                                                                                string baseFolder = System.IO.Path.Combine("D:", "Compressed");
                                                                                string inputFile = System.IO.Path.Combine(baseFolder, file);
                                                                                string outFile = inputFile + ".wmz";
                                                                                using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(inputFile))
                                                                                {
                                                                                    Aspose.Imaging.ImageOptions.VectorRasterizationOptions vectorRasterizationOptions = new Aspose.Imaging.ImageOptions.WmfRasterizationOptions() { PageSize = image.Size};
                                                                                    image.Save(outFile, new Aspose.Imaging.ImageOptions.WmfOptions() {VectorRasterizationOptions = vectorRasterizationOptions, Compress = true});
                                                                                }

L’exemple següent mostra com convertir una imatge compresa (de EMZ,.wmz, *.svgz) per a 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});
                                                                                                                    }
                                                                                                                }

Aquest exemple mostra com carregar una imatge WMF d’un arxiu i convertir-la a SVG utilitzant Opcions WmfRasterization.

string dir = "c:\\temp\\";

                                                                                                                      // Using Aspose.Imaging.Image.Load is a unified way to load all types of images including WMF.
                                                                                                                      using (Aspose.Imaging.FileFormats.Wmf.WmfImage wmfImage = (Aspose.Imaging.FileFormats.Wmf.WmfImage)Aspose.Imaging.Image.Load(dir + "test.wmf"))
                                                                                                                      {
                                                                                                                          Aspose.Imaging.ImageOptions.SvgOptions saveOptions = new Aspose.Imaging.ImageOptions.SvgOptions();

                                                                                                                          // Text will be converted to shapes.
                                                                                                                          saveOptions.TextAsShapes = true;

                                                                                                                          Aspose.Imaging.ImageOptions.WmfRasterizationOptions rasterizationOptions = new Aspose.Imaging.ImageOptions.WmfRasterizationOptions();

                                                                                                                          // The background color of the drawing surface.
                                                                                                                          rasterizationOptions.BackgroundColor = Aspose.Imaging.Color.WhiteSmoke;

                                                                                                                          // The page size.
                                                                                                                          rasterizationOptions.PageSize = wmfImage.Size;

                                                                                                                          // If embedded emf exists, then render emf; otherwise render wmf.
                                                                                                                          rasterizationOptions.RenderMode = Aspose.Imaging.FileFormats.Wmf.WmfRenderMode.Auto;

                                                                                                                          saveOptions.VectorRasterizationOptions = rasterizationOptions;

                                                                                                                          wmfImage.Save(dir + "test.output.svg", saveOptions);
                                                                                                                      }

Constructors

WmfImage()

Creació d’una nova instància de la classe Aspose.Imaging.FileFormats.Wmf.manipulació i processament de dades d’imatge de Windows Metafile (WMF).constructor proporciona un objecte fonamental per treballar amb les imatges de WMF, que permetenIntegració sense segles de les capacitats de gestió d’imatges de WMF en la seva aplicacióLa funcionalitat .

[JsonConstructor]
public WmfImage()

WmfImage(Int, Int)

Instal·la una nova instància de la classe Aspose.Imaging.FileFormats.Wmf.Paràmetres d’amplada i altitud, facilitant la creació de imatges WMF blanquesadaptat a dimensions específiques. Utilitza aquest constructor per generar dinàmicamentImatges WMF amb dimensions precises, que permeten la creació d’imatges flexibles imanipulació dins de la seva aplicació.

public WmfImage(int width, int height)

Parameters

width int

La seva amplada.

height int

La seva alçada.

Properties

BitsPerPixel

Retirar el nombre de bits per pixel per a la imatge, indicant el nivell de colorprofunditat o granularitat. Utilitza aquesta propietat per determinar el color de la imatgerepresentació i precisió, facilitant els controls de compatibilitat i els colors relacionatsprocessament dins de la seva sol·licitud.

[JsonIgnore]
public override int BitsPerPixel { get; }

Valor de la propietat

int

Exceptions

NotImplementedException

FileFormat

Accés al valor del format de fitxer associat a la imatge, proporcionant informaciósobre el format en què s’emmagatzema la imatge. Utilitza aquesta propietat per determinarel format de fitxers de la imatge, facilitant els controls de compatibilitat iTractament específic de format dins de la seva aplicació.

public override FileFormat FileFormat { get; }

Valor de la propietat

FileFormat

FrameBounds

Accés als límits del marc, indicant la seva posició i dimensions dins de laUtilitza aquesta propietat per obtenir informació detallada sobre el marcubicació espacial, que permet la manipulació i el rendiment precisos dins de la seva aplicació.

public Rectangle FrameBounds { get; }

Valor de la propietat

Rectangle

Màxim F

Accés a l’alçada de la imatge, representant el nombre de píxels al llarg de les seves verticalsUtilitza aquesta propietat per determinar les dimensions espacials i l’aspecte de la imatgeproporció, permetent el disseny precís i la realització d’ajustaments dins de la seva aplicació.

public override float HeightF { get; }

Valor de la propietat

float

Exceptions

NotImplementedException

Inch

Accés o modificació de la propietat d’inch, representant una unitat de mesurament normalmentutilitzat per especificar les dimensions físiques en els contextos d’impressió o de presentació.propietat per establir o recuperar valors d’inch associats amb la imatge,Facilitar la representació exacta de dimensions físiques dins de la seva aplicació.

public int Inch { get; set; }

Valor de la propietat

int

IsCached

Retirar un valor booleà que indiqui si les dades de l’objecte estan actualitzades,eliminant la necessitat d’operacions addicionals de lectura de dades. Utilitzar aquesta propietatper optimitzar el rendiment determinant si les dades de l’objecte estan fàcilment disponiblesSense necessitat de costosos processos de recuperació de dades dins de la seva sol·licitud.

public override bool IsCached { get; }

Valor de la propietat

bool

Exceptions

NotImplementedException

El WidthF

Accedeix a l’amplada de la imatge, indicant el nombre de píxels al llarg del seuAxi horitzontal. Utilitza aquesta propietat per determinar les dimensions espacials de la imatgei la proporció d’aspecte, permetent el disseny precís i rendir ajustaments dins del seuLa seva aplicació.

public override float WidthF { get; }

Valor de la propietat

float

Exceptions

NotImplementedException

Methods

AddRecord(WmfObject)

Incorporar l’objecte de registre especificat a la imatge, enriquint el seu contingut ambdades addicionals o metadades. Utilitzeu aquest mètode per integrar sense cap mena d’enregistramentobjectes a la imatge, facilitant l’emmagatzematge integral de dades i organitzaciódins de la seva sol·licitud.

public int AddRecord(WmfObject record)

Parameters

record WmfObject

El record .

Returns

int

Número de registres.

CacheData()

cache eficaçment les dades, eliminant la necessitat de càrrega addicional des de lasubjecte Aspose.Imaging.DataStreamSupporter.data StreamContainer. Utilitzeu aquestmètode per optimitzar el rendiment i minimitzar l’ús de recursos en la seva aplicaciómitjançant l’emmagatzematge i accés al cache de dades locals.

public override void CacheData()

Examples

Aquest exemple mostra com carregar una imatge WMF d’un arxiu i llista tots els seus registres.

string dir = "c:\\temp\\";

                                                                                              // Using Aspose.Imaging.Image.Load is a unified way to load all types of images including WMF.
                                                                                              using (Aspose.Imaging.FileFormats.Wmf.WmfImage wmfImage = (Aspose.Imaging.FileFormats.Wmf.WmfImage)Aspose.Imaging.Image.Load(dir + "test.wmf"))
                                                                                              {
                                                                                                  // Cache data to load all records.
                                                                                                  wmfImage.CacheData();
                                                                                                  System.Console.WriteLine("The total number of records: {0}", wmfImage.Records.Count);

                                                                                                  // The key is a record type, the value is number of records of that type in the WMF image.
                                                                                                  System.Collections.Generic.Dictionary<system.type, int=""> types =
                                                                                                      new System.Collections.Generic.Dictionary<system.type, int="">();

                                                                                                  // Gather statistics 
                                                                                                  foreach (Aspose.Imaging.FileFormats.Wmf.Objects.WmfObject obj in wmfImage.Records)
                                                                                                  {
                                                                                                      System.Type objType = obj.GetType();
                                                                                                      if (!types.ContainsKey(objType))
                                                                                                      {
                                                                                                          types.Add(objType, 1);
                                                                                                      }
                                                                                                      else
                                                                                                      {
                                                                                                          types[objType]++;
                                                                                                      }
                                                                                                  }

                                                                                                  // Print statistics
                                                                                                  System.Console.WriteLine("Record Type                              Count");
                                                                                                  System.Console.WriteLine("----------------------------------------------");
                                                                                                  foreach (System.Collections.Generic.KeyValuePair<system.type, int=""> entry in types)
                                                                                                  {
                                                                                                      string objectType = entry.Key.Name;
                                                                                                      string alignmentGap = new string(' ', 40 - objectType.Length);
                                                                                                      System.Console.WriteLine("{0}:{1}{2}", entry.Key.Name, alignmentGap, entry.Value);
                                                                                                  }
                                                                                              }

                                                                                              //The output may look like this:
                                                                                              //The total number of records: 613
                                                                                              //Record Type                              Count
                                                                                              //----------------------------------------------
                                                                                              //WmfSetBkMode:                            1
                                                                                              //WmfSetTextAlign:                         1
                                                                                              //WmfSetRop2:                              1
                                                                                              //WmfSetWindowOrg:                         1
                                                                                              //WmfSetWindowExt:                         1
                                                                                              //WmfCreateBrushInDirect:                  119
                                                                                              //WmfSelectObject:                         240
                                                                                              //WmfCreatePenInDirect:                    119
                                                                                              //WmfSetPolyFillMode:                      1
                                                                                              //WmfPolyPolygon:                          114
                                                                                              //WmfPolyLine:                             7
                                                                                              //WmfSetTextColor:                         2
                                                                                              //WmfCreateFontInDirect:                   2
                                                                                              //WmfExtTextOut:                           2
                                                                                              //WmfDibStrechBlt:                         1
                                                                                              //WmfEof:                                  1</system.type,></system.type,></system.type,>

Exceptions

NotImplementedException

GetDefaultOptions(Objecte[])

Retirar les opcions de default associades a la imatge, proporcionant accés aConfiguracions o configuracions predefinides. Utilitza aquest mètode per accedir a la configuracióEstabliments per a les operacions de processament d’imatge, facilitant la consistència i la comoditatDins de la funcionalitat de l’aplicació.

public override ImageOptionsBase GetDefaultOptions(object[] args)

Parameters

args object []

Els arguments .

Returns

ImageOptionsBase

Opcions de default

GetOriginalOptions()

Obtenir les opcions d’imatge original.

public override ImageOptionsBase GetOriginalOptions()

Returns

ImageOptionsBase

Opcions d’imatge original.

GetPostScript()

Accés a les dades PostScript associades a la imatge, proporcionant detallsinformació sobre la seva estructura o contingut. utilitzeu aquest mètode per recuperarDades PostScript per a més anàlisi o processament dins de la seva aplicació,Permetre funcionalitats avançades relacionades amb la renderització o la manipulació de PostScript.

public string GetPostScript()

Returns

string

El post guió

GetUsedFonts()

Retirar la llista de fonts utilitzats dins del metafísic, proporcionant una visió de lafont recursos utilitzats en la imatge. Utilitzar aquest mètode per analitzar l’ús de fonti assegurar la disponibilitat de fonts per a la realització o processament posterior dins de la seva aplicació.

public override string[] GetUsedFonts()

Returns

string []

Llista de fonts

ResizeCanvas(Rectangle)

Recuperar la canva de l’imatge, ajustant les seves dimensions mentre manté la imatgeUtilitzeu aquest mètode per modificar la mida de les cànvules sense canviar lacontingut, facilitant ajustos de disseny i canvis de composició dins del seuLa seva aplicació.

public override void ResizeCanvas(Rectangle newRectangle)

Parameters

newRectangle Rectangle

El nou rectangle.

Exceptions

NotImplementedException

SetPalette(Col·lecció, Bool)

Apliqueu una paleta especificada a la imatge, permetent la personalització del colorUtilitza aquest mètode per millorar la renderització visual iefectes de color específics dins de la seva aplicació.

public override void SetPalette(IColorPalette palette, bool updateColors)

Parameters

palette IColorPalette

La paleta s’ha de fixar.

updateColors bool

si s’estableix a “verd” colors es actualitzarà d’acord amb la nova paleta; en cas contrari, els indicadors de colors romanen inalterats.

Exceptions

NotImplementedException

 Català