Class EmfImage

Class EmfImage

Navne til: Aspose.Imaging.FileFormats.Emf Sammensætning: Aspose.Imaging.dll (25.4.0)

API for Enhanced Metafile Format (EMF) vektor billedformat support eret omfattende værktøj til behandling af grafiske billeder i en enhed uafhængigfor at opretholde sine oprindelige ejendomme. udviklet til at bevareproportioner, dimensioner, farver og andre grafiske egenskaber, det omfatterEMF Plus formatsstøtte og funktioner til græsningsregioner, residerende kanvasog billeder, rotering, flipping, indstilling af billedpaletter, eksport og importtil APS-enhedskontekst, komprimering og konvertering af EMF til andre formater, der sikrerVersatil manipulation og seamless integration af EMF-billeder over applikationer.

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

Inheritance

object DisposableObject DataStreamSupporter Image VectorImage MetaImage EmfImage

Implements

IDisposable , IObjectWithBounds , IObjectWithSizeF

De arvede medlemmer

MetaImage.GetUsedFonts() , MetaImage.GetMissedFonts() , MetaImage.ResizeCanvas(Rectangle) , 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.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

Følgende eksempel viser, hvordan man konverterer en emz-billede til emf fraat

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

Følgende eksempel viser, hvordan man konverterer en emf-billede til emz fromat

string file = "input.emf";
                                                                                string baseFolder = System.IO.Path.Combine("D:", "Compressed");
                                                                                string inputFile = System.IO.Path.Combine(baseFolder, file);
                                                                                string outFile = inputFile + ".emz";
                                                                                using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(inputFile))
                                                                                {
                                                                                    Aspose.Imaging.ImageOptions.VectorRasterizationOptions vectorRasterizationOptions = new Aspose.Imaging.ImageOptions.EmfRasterizationOptions() { PageSize = image.Size};
                                                                                    image.Save(outFile, new Aspose.Imaging.ImageOptions.EmfOptions() {VectorRasterizationOptions = vectorRasterizationOptions, Compress = true});
                                                                                }

Følgende eksempel viser, hvordan man konverterer et komprimeret billede (af EMZ,.wmz, *.svgz) til raster fraat

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});
                                                                                                                    }
                                                                                                                }

Dette eksempel viser, hvordan man lader et EMF-billede fra en fil og konverterer det til SVG ved hjælp af EmfRasterizationOptions.

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

                                                                                                                      // Using Aspose.Imaging.Image.Load is a unified way to load all types of images including EMF.
                                                                                                                      using (Aspose.Imaging.FileFormats.Emf.EmfImage emfImage = (Aspose.Imaging.FileFormats.Emf.EmfImage)Aspose.Imaging.Image.Load(dir + "test.emf"))
                                                                                                                      {
                                                                                                                          Aspose.Imaging.ImageOptions.SvgOptions saveOptions = new Aspose.Imaging.ImageOptions.SvgOptions();

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

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

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

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

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

                                                                                                                          // Set the horizontal margin
                                                                                                                          rasterizationOptions.BorderX = 50;

                                                                                                                          // Set the vertical margin
                                                                                                                          rasterizationOptions.BorderY = 50;

                                                                                                                          saveOptions.VectorRasterizationOptions = rasterizationOptions;

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

Constructors

EmfImage()

Start med at arbejde med EMF-billeder ved at initiere en ny instans afAspose.Imaging.FileFormats.Emf. EmfImage klasse. Ideel til hurtigt at indsætte EMF-billeder iDine projekter er nemme og effektive.

[JsonConstructor]
public EmfImage()

EmfImage(Det er int)

Skab en ny instans af Aspose.Imaging.FileFormats.Emf. EmfImage klasse ved at angive breddenog højdeparametrer. denne konstruktor forenkler processen med at initialisereEMF-billeder med specifikke dimensioner, der forbedrer effektiviteten af din udviklingArbejdsfløjen .

public EmfImage(int width, int height)

Parameters

width int

Den bredde.

height int

Den højde.

Properties

BitsPerPixel

Returnerer det bit-per-pixel-tælling, der er specifik til rasterbilleder, som denne parameterikke gælder for vektorbilleder. hurtigt opdage pixel dybden af rasterbilleder til nøjagtig analyse og manipulation, der sikrer korrekt håndteringaf billeddata.

public override int BitsPerPixel { get; }

Ejendomsværdi

int

Exceptions

NotImplementedException

Invalid til vektorbilleder.

FileFormat

Få adgang til værdien af filformatet, der er forbundet med objektet.filformatet, der er forbundet med objektet for stram behandling ogkompatibilitetskontrol. forenkle dit arbejdsproces ved at hente filformatetOplysningerne er nemme.

public override FileFormat FileFormat { get; }

Ejendomsværdi

FileFormat

Header

Gendanne eller ændre EMF metafile headerregistret med denne ejendom.håndtere metafildata effektivt inden for din ansøgning. forbedre dit arbejdsprocesTilgængelighed af metafysiske headeroplysninger.

public EmfMetafileHeader Header { get; set; }

Ejendomsværdi

EmfMetafileHeader

Højf

Retrækker billedets højde, hvilket gør det lettere at foretage præcise renderinger og layoutjusteringer.Tilgang til højde ejendommen sikrer kompatibilitet og sømløs integration tværsforskellige platforme og applikationer.

public override float HeightF { get; }

Ejendomsværdi

float

IsCached

adgang til en værdi, der angiver, om objektets data i øjeblikket er cachet,afskaffelse af behovet for yderligere data læsning. øge effektiviteten ved hurtigtat bestemme, om cachede data er tilgængelige for øjeblikkelig adgang.Arbejdsflydelse med strammede dataoptagelsesprocesser.

public override bool IsCached { get; }

Ejendomsværdi

bool

Records

Gennemføre eller ændre de dokumenter, der er forbundet med objektet.administrere indsamlingen af optegnelser til forbedret datahåndtering og behandling.Optimer din arbejdsproces ved at interagere forsigtigt med objektets optegnelser.

public override MetaObjectList Records { get; set; }

Ejendomsværdi

MetaObjectList

af widthf

Tilgængelighed til billedets bredde, der giver væsentlige oplysninger for præcisitetrendering og bearbejdning. hurtigt genvinde billedets bredde for at sikre kompatibilitetog korrekt layout inden for forskellige applikationer og platforme.

public override float WidthF { get; }

Ejendomsværdi

float

Methods

CacheData()

Effektivt cache data og forhindre redundant opladning fra underliggendeAspose.Imaging.DataStreamSupporter.data StreamContainer med denne metode.ydeevne og stram adgang til data i din ansøgning, optimering af ressourcerBrug til forbedret respons.

public override void CacheData()

Examples

Dette eksempel viser, hvordan man lader et EMF-billede fra en fil og liste alle dens optegnelser.

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.Emf.EmfImage emfImage = (Aspose.Imaging.FileFormats.Emf.EmfImage)Aspose.Imaging.Image.Load(dir + "test.emf"))
                                                                                              {
                                                                                                  // Cache data to load all records.
                                                                                                  emfImage.CacheData();
                                                                                                  System.Console.WriteLine("The total number of records: {0}", emfImage.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.Emf.Emf.Records.EmfRecord obj in emfImage.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: 1188
                                                                                              //Record Type                              Count
                                                                                              //----------------------------------------------
                                                                                              //EmfMetafileHeader:                       1
                                                                                              //EmfSetBkMode:                            1
                                                                                              //EmfSetTextAlign:                         1
                                                                                              //EmfSetRop2:                              1
                                                                                              //EmfSetWorldTransform:                    1
                                                                                              //EmfExtSelectClipRgn:                     1
                                                                                              //EmfCreateBrushIndirect:                  113
                                                                                              //EmfSelectObject:                         240
                                                                                              //EmfCreatePen:                            116
                                                                                              //EmfSetPolyFillMode:                      1
                                                                                              //EmfBeginPath:                            120
                                                                                              //EmfMoveToEx:                             122
                                                                                              //EmfPolyBezierTo16:                       36
                                                                                              //EmfLineTo:                               172
                                                                                              //EmfCloseFigure:                          14
                                                                                              //EmfEndPath:                              120
                                                                                              //EmfStrokeAndFillPath:                    113
                                                                                              //EmfStrokePath:                           7
                                                                                              //EmfSetTextColor:                         2
                                                                                              //EmfExtCreateFontIndirectW:               2
                                                                                              //EmfExtTextOutW:                          2
                                                                                              //EmfStretchBlt:                           1
                                                                                              //EmfEof:                                  1</system.type,></system.type,></system.type,>

GetDefaultOptions(Objekt[])

Returner de standardmuligheder for dit billede hårdt. med denne funktion, dukan hurtigt få adgang til de forudset konfigurationer, der sikrer sømløs integration ogoptimale ydeevne til dine projekter. ideel til at forenkle dit arbejdsproces ogAt opnå konsekvente resultater over dine billeder.

public override ImageOptionsBase GetDefaultOptions(object[] args)

Parameters

args object []

og argumenterne.

Returns

ImageOptionsBase

Undtagelsesmuligheder

GetOriginalOptions()

Få de oprindelige billedmuligheder.

public override ImageOptionsBase GetOriginalOptions()

Returns

ImageOptionsBase

De originale billedmuligheder.

GetUsedFonts()

Returnerer listen over bogstaver, der anvendes i metafilen med denne metode.indsigt i fontanvendelse, der letter effektiv forvaltning og optimering af fontRessourcer til forbedret rendering og display loyalitet.

public override string[] GetUsedFonts()

Returns

string []

Den skriftlige liste

ResizeCanvas(Rectangle)

Gør kanvaserne nemt ved hjælp af denne funktion. Perfekt til at justere det samleded) dimensioner af billedet uden at ændre dens indhold. Bedre præsentation ogForbered billeder til forskellige skærmstørrelser hårdt.

public override void ResizeCanvas(Rectangle newRectangle)

Parameters

newRectangle Rectangle

Den nye rektangle.

SetPalette(Fællesskab, Bool)

Indsæt billedpaletten.

public override void SetPalette(IColorPalette palette, bool updateColors)

Parameters

palette IColorPalette

Paletten skal indstilles.

updateColors bool

Hvis du er indstillet til ’true’ farver vil blive opdateret i henhold til den nye palet; ellers farveindekser forbliver uændrede. bemærke, at uændrede indekser kan bryde billedet på opladning, hvis nogle indekser ikke har de tilsvarende palet indtægter.

Exceptions

NotImplementedException

 Dansk