Class EmfImage

Class EmfImage

Pôvodný názov: Aspose.Imaging.FileFormats.Emf Zhromaždenie: Aspose.Imaging.dll (25.4.0)

Podpora API pre rozšírený formát metafilu (EMF) vektorového formátu obrazu jekomplexný nástroj na spracovanie grafických obrazov v nezávislom zariadeníspôsob, ako zachovať svoje pôvodné vlastnosti. vyvinutý na zachovanieproporcie, rozmery, farby a iné grafické atribúty, ktoré zahŕňajúPodpora formátu EMF Plus a funkcie pre kopačné regióny, rezačné kanvasya obrázky, otáčanie, flipping, nastavenie obrazových palet, exportovanie a importovaniena kontext zariadenia APS, komprimovanie a konverzia EMF do iných formátov, zabezpečenievšestranná manipulácia a bezproblémová integrácia obrazov EMF v aplikáciách.

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

Inheritance

object DisposableObject DataStreamSupporter Image VectorImage MetaImage EmfImage

Implements

IDisposable , IObjectWithBounds , IObjectWithSizeF

Z dedičných členov

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

Nasledujúci príklad ukazuje, ako premeniť emz obrázky na emf odat

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

Nasledujúci príklad ukazuje, ako premeniť obrázok emf na 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});
                                                                                }

Nasledujúci príklad ukazuje, ako premeniť komprimované obrázky (a EMZ,.wmz, *.svgz) na raster odat

string[] files = new[] {"example.emz", "example.wmz", "example.svgz"};
                                                                                                                string baseFolder = System.IO.Path.Combine("D:","Compressed");
                                                                                                                foreach (var file in files)
                                                                                                                {
                                                                                                                    string inputFile = System.IO.Path.Combine(baseFolder, file);
                                                                                                                    string outFile = inputFile + ".png";
                                                                                                                    using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(inputFile))
                                                                                                                    {
                                                                                                                        Aspose.Imaging.ImageOptions.VectorRasterizationOptions vectorRasterizationOptions = (Aspose.Imaging.ImageOptions.VectorRasterizationOptions)image.GetDefaultOptions(new object[] { Color.White, image.Width, image.Height });
                                                                                                                        image.Save(outFile, new Aspose.Imaging.ImageOptions.PngOptions(){VectorRasterizationOptions = vectorRasterizationOptions});
                                                                                                                    }
                                                                                                                }

Tento príklad ukazuje, ako nahrať EMF obrázok z súboru a premeniť ho na SVG pomocou 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()

Začnite pracovať s obrazmi EMF iniciovaním novej inštancieAspose.Imaging.FileFormats.Emf. EmfImage trieda. Ideálne pre rýchle začlenenie EMF obrázkov doVáš projekt je jednoduchý a efektívny.

[JsonConstructor]
public EmfImage()

EmfImage(a int, int)

Vytvorte novú inštanciu triedy Aspose.Imaging.FileFormats.Emf. EmfImage špecifikáciou šírkya výška parametrov. Tento konštruktor zjednodušuje proces iniciovaniaEMF obrázky so špecifickými rozmermi, ktoré zvyšujú efektívnosť vášho vývojapracovný tok .

public EmfImage(int width, int height)

Parameters

width int

Na šírku .

height int

na výšku .

Properties

BitsPerPixel

Obnoviť počítanie bit-per-pixel špecifické pre raster obrázky, ako tento parameterneplatí pre vektorové obrázky. rýchlo zistiť hĺbku pixelov rastusnímky pre presnú analýzu a manipuláciu, zaisťovanie presnej manipulácies obrázkovými údajmi.

public override int BitsPerPixel { get; }

Hodnota nehnuteľnosti

int

Exceptions

NotImplementedException

Invalidné pre vektorové obrázky.

FileFormat

Prístup k hodnoty formátu súboru spojené s objektom.formát súboru spojený s objektom pre zjednodušené spracovanie akompatibilita kontroly. zjednodušiť váš pracovný tok získaním formátu súboruInformácie s ľahkosťou.

public override FileFormat FileFormat { get; }

Hodnota nehnuteľnosti

FileFormat

Header

Obnoviť alebo zmeniť EMF metafýlový titulný záznam s touto vlastnosťou.efektívne spravovať metafyzické údaje vo vašej aplikácii.Zlepšenie pracovného tokuso zjednodušeným prístupom k informáciám o metafyzických hlavách.

public EmfMetafileHeader Header { get; set; }

Hodnota nehnuteľnosti

EmfMetafileHeader

VysokýF

Obnoviť výšku obrazu, čo uľahčuje presné renderovanie a úpravy rozloženia.Prístup k vlastnosti výšky zaisťuje kompatibilitu a bezdrôtovú integráciu medzirôzne platformy a aplikácie.

public override float HeightF { get; }

Hodnota nehnuteľnosti

float

IsCached

Dostupnosť hodnoty, ktorá naznačuje, či sú údaje objektu v súčasnosti kryté,odstránenie potreby ďalšieho čítania údajov.Výkonnosť sa rýchlo zvyšujeurčiť, či sú k dispozícii cachované údaje pre okamžitý prístup.pracovný tok so zjednodušenými procesmi prijímania údajov.

public override bool IsCached { get; }

Hodnota nehnuteľnosti

bool

Records

Obnoviť alebo zmeniť záznamy súvisiace s objektom. efektívny prístup aspravovať zhromažďovanie záznamov na zlepšenie manipulácie a spracovania údajov.Optimalizujte svoj pracovný tok bezproblémovou interakciou s záznammi objektu.

public override MetaObjectList Records { get; set; }

Hodnota nehnuteľnosti

MetaObjectList

Vtáčik

Prístup k šírke obrazu, ktorý poskytuje dôležité informácie pre presnosťrenderovanie a spracovanie. rýchlo získať šírku obrazu, aby sa zabezpečila kompatibilitaa správne usporiadanie v rámci rôznych aplikácií a platforiem.

public override float WidthF { get; }

Hodnota nehnuteľnosti

float

Methods

CacheData()

Efektívne cache údajov a zabrániť redundantné zaťaženie z podkladovýchAspose.Imaging.DataStreamSupporter.Toto metódu používajte na zdokonaľovanievýkonnosť a rýchly prístup k údajom vo vašej aplikácii, optimalizácia zdrojovPoužitie pre lepšiu reakciu.

public override void CacheData()

Examples

Tento príklad ukazuje, ako nahrať obrázok EMF z súboru a zoznam všetkých jeho záznamov.

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

Obnoviť predvolené možnosti pre váš obrázok bez námahy. s touto funkciou,umožňuje rýchly prístup k prednastaveným konfiguráciám, zabezpečuje bezproblémovú integráciu aoptimálny výkon pre vaše projekty. ideálne pre zjednodušenie vášho pracovného toku adosiahnuť konzistentné výsledky cez vaše obrázky.

public override ImageOptionsBase GetDefaultOptions(object[] args)

Parameters

args object []

Sú to argumenty.

Returns

ImageOptionsBase

Predvolené možnosti

GetOriginalOptions()

Získajte originálne možnosti obrazu.

public override ImageOptionsBase GetOriginalOptions()

Returns

ImageOptionsBase

Možnosti originálneho obrazu.

GetUsedFonts()

Obnoviť zoznam písmen používaných v metafyle pomocou tejto metódy.vnímanie používania písma, uľahčenie efektívneho riadenia a optimalizácieZvýšenie renderovania a vernosti zobrazovania.

public override string[] GetUsedFonts()

Returns

string []

Zoznam fontov

ResizeCanvas(Rectangle)

Odstráňte kanvy s ľahkosťou pomocou tejto funkcie.Vhodné na úpravu celkovejrozmery obrazu bez zmeny jeho obsahu.Vylepšenie prezentácie aPripravte obrázky pre rôzne veľkosti displeja bez námahy.

public override void ResizeCanvas(Rectangle newRectangle)

Parameters

newRectangle Rectangle

Nový pravý kút.

SetPalette(IkolorPalette, Boolová)

Vytvorte obrazovú paletu.

public override void SetPalette(IColorPalette palette, bool updateColors)

Parameters

palette IColorPalette

Paleta na nastavenie.

updateColors bool

Ak je nastavený na “skutočné” farby budú aktualizované podľa novej palety; inak farebné indexy zostanú nezmenené.

Exceptions

NotImplementedException

 Slovenčina