Class WmfImage

Class WmfImage

Le nom : Aspose.Imaging.FileFormats.Wmf Assemblée: Aspose.Imaging.dll (25.4.0)

Manipuler les images de Microsoft Windows Metafile (WMF) avec notre API, sans signetraiter les données vectorielles et bitmap stockées dans les enregistrements de longueur variable.Récupérer, tourner et flip des images facilement tout en configurant des palettes d’image personnalisées.Convertir les fichiers WMF dans des formats comprimés ou les sauvegarder dans les format d’image de rasterPour une utilisation polyvalente sur des plateformes et des applications.

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

Inheritance

object DisposableObject DataStreamSupporter Image VectorImage MetaImage WmfImage

Implements

IDisposable , IObjectWithBounds , IObjectWithSizeF

I membri ereditari

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 ci-dessous montre comment convertir une image wmz à l’imagerie 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 ci-dessous montre comment convertir une image wmf à un fromat de 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 ci-dessous montre comment convertir une image comprimée (et EMZ,.wmz, *.svgz) pour 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});
                                                                                                                    }
                                                                                                                }

Cet exemple montre comment charger une image WMF d’un fichier et la convertir en SVG en utilisant WmfRasterizationOptions.

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()

Créer une nouvelle instance de la classe Aspose.Imaging.FileFormats.Wmf.MWfImage, en l’initialisant pourplus de manipulation et de traitement des données d’image de Windows Metafile (WMF).constructeur fournit un objet de base pour travailler avec des images WMF, permettantIntégration sans fil des capacités de gestion d’image WMF dans votre applicationLa fonctionnalité .

[JsonConstructor]
public WmfImage()

WmfImage(int, int)

Instantanez une nouvelle instance de la classe Aspose.Imaging.FileFormats.Wmf.MWfImage avec personnalisableParamètres de largeur et de hauteur, facilitant la création d’images WMF blancsadapté à des dimensions spécifiques. Utilisez ce constructeur pour générer dynamiquementImages WMF avec des dimensions précises, permettant une création d’image flexible etmanipulation dans votre application.

public WmfImage(int width, int height)

Parameters

width int

La larghezza .

height int

La altezza .

Properties

BitsPerPixel

Retire le nombre de bits par pixel pour l’image, indiquant le niveau de couleurprofondeur ou granularité. Utilisez cette propriété pour déterminer la couleur de l’imagereprésentation et précision, facilitant les vérifications de compatibilité et les contrôles de couleurTraitement à l’intérieur de votre demande.

[JsonIgnore]
public override int BitsPerPixel { get; }

Valore di proprietà

int

Exceptions

NotImplementedException

FileFormat

Accès à la valeur du format de fichier associée à l’image, fournissant des informationssur le format dans lequel l’image est stockée. Utilisez cette propriété pour déterminerle format de fichier de l’image, facilitant les vérifications de compatibilité etTraitement de format spécifique dans votre application.

public override FileFormat FileFormat { get; }

Valore di proprietà

FileFormat

FrameBounds

Accès aux limites du cadre, indiquant sa position et ses dimensions au sein de laimage. Utilisez cette propriété pour obtenir des informations détaillées sur le cadrelocalisation spatiale, permettant une manipulation et un rendu précis dans votre application.

public Rectangle FrameBounds { get; }

Valore di proprietà

Rectangle

La hauteur

Accès à la hauteur de l’image, représentant le nombre de pixels le long de sa verticaleUtilisez cette propriété pour déterminer les dimensions spatiales et l’aspect de la imageRatio, permettant un layout précis et la réalisation d’ajustements dans votre application.

public override float HeightF { get; }

Valore di proprietà

float

Exceptions

NotImplementedException

Inch

Accès ou modification de la propriété de pouce, représentant une unité de mesure typiquementutilisé pour spécifier les dimensions physiques dans les contextes d’impression ou d’affichage.la propriété pour établir ou récupérer les valeurs pouces associées à l’image,faciliter la représentation précise des dimensions physiques dans votre application.

public int Inch { get; set; }

Valore di proprietà

int

IsCached

Retire une valeur boolean indiquant si les données de l’objet sont actuellement cachées,éliminer la nécessité d’autres opérations de lecture de données. Utilisez cette propriétéoptimiser les performances en déterminant si les données de l’objet sont facilement disponiblessans nécessité de processus de récupération de données coûteux dans votre demande.

public override bool IsCached { get; }

Valore di proprietà

bool

Exceptions

NotImplementedException

Vidéo

Accès à la largeur de l’image, indiquant le nombre de pixels le long de sonaxes horizontaux. Utilisez cette propriété pour déterminer les dimensions spatiales de l’imageet le rapport de l’aspect, permettant la mise en place précise et la réalisation d’ajustements dans votreà l’application.

public override float WidthF { get; }

Valore di proprietà

float

Exceptions

NotImplementedException

Methods

AddRecord(WmfObject)

Incorporer l’objet d’enregistrement spécifié dans l’image, enrichissant son contenu avecDonnées supplémentaires ou métadonnées. Utilisez cette méthode pour intégrer les enregistrements sans fildes objets dans l’image, facilitant le stockage complet des données et l’organisationdans votre demande.

public int AddRecord(WmfObject record)

Parameters

record WmfObject

Le record !

Returns

int

Nombre de record.

CacheData()

cache efficacement les données, éliminant la nécessité de chargement supplémentaire de lasous-titre Aspose.Imaging.DataStreamSupporter.data StreamContainer. Utilisez ceciméthode pour optimiser les performances et minimiser l’utilisation des ressources dans votre applicationen stockant et en accédant au cache des données locales.

public override void CacheData()

Examples

Cet exemple montre comment télécharger une image WMF d’un fichier et la liste de tous ses enregistrements.

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(Objets[])

Récupérer les options par défaut associées à l’image, offrant un accès àparamètres ou configurations prédéfinis. Utilisez cette méthode pour accéder par défautparamètres pour les opérations de traitement d’image, facilitant la cohérence et la commoditédans la fonctionnalité de votre application.

public override ImageOptionsBase GetDefaultOptions(object[] args)

Parameters

args object [ ]

Gli argomenti .

Returns

ImageOptionsBase

Opzioni di default

GetOriginalOptions()

Obtenez les options d’image originale.

public override ImageOptionsBase GetOriginalOptions()

Returns

ImageOptionsBase

Les options d’image originales.

GetPostScript()

Accès aux données PostScript associées à l’image, fournissant des détailsinformation sur sa structure ou son contenu. Utilisez cette méthode pour obtenirLes données PostScript pour une analyse ou un traitement ultérieur dans votre application,Permettre des fonctionnalités avancées liées à la rendue ou la manipulation PostScript.

public string GetPostScript()

Returns

string

Le post scénario

GetUsedFonts()

Retrouvez la liste des phrases utilisées dans le métaphile, fournissant une vision de laressources font utilisées dans l’image. Utilisez cette méthode pour analyser l’utilisation de fontet assurer la disponibilité des fonctions pour la réalisation ou le traitement ultérieur dans votre application.

public override string[] GetUsedFonts()

Returns

string [ ]

La liste des fonts

ResizeCanvas(Rectangle)

Récupérer les canvas de l’image, ajuster ses dimensions tout en conservant l’imageUtilisez cette méthode pour modifier la taille des canvas sans changer lacontenu, facilitant les ajustements de layout et les modifications de composition dans votreà l’application.

public override void ResizeCanvas(Rectangle newRectangle)

Parameters

newRectangle Rectangle

Le nouveau rectangle.

Exceptions

NotImplementedException

SetPalette(Méditerranée, Bool)

Appliquer une palette spécifiée à l’image, permettant la personnalisation des couleursUtilisez cette méthode pour améliorer la rendu visuelle etEffets de couleur spécifiques dans votre application.

public override void SetPalette(IColorPalette palette, bool updateColors)

Parameters

palette IColorPalette

La paletta da impostare.

updateColors bool

si la couleur “true” sera mise à jour selon la nouvelle palette; sinon les indicateurs de couleurs restent inchangés. note que les indices inchangés peuvent s’effondrer l’image sur le chargement si certains index ont des entrées palettes non correspondantes.

Exceptions

NotImplementedException

 Français