Class WmfImage

Class WmfImage

ja nimityö: Aspose.Imaging.FileFormats.Wmf Kokoelma: Aspose.Imaging.dll (25.4.0)

Manipuloi Microsoft Windows Metafile (WMF) -kuvia API:n avullakäsittelee sekä vektorin että bitmap-tietoja, jotka on tallennettu muuttujan pituusrekisterissä.Muokkaa, pyöritä ja flip kuvia helposti asettamalla mukautettuja kuvan paletteja.Muuntaa WMF-tiedostoja kompressoituihin wMZ-muotoihin tai tallentaa ne raster-kuvan muodoksiinmonipuolista käyttöä eri alustoilla ja sovelluksissa.

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

Inheritance

object DisposableObject DataStreamSupporter Image VectorImage MetaImage WmfImage

Implements

IDisposable , IObjectWithBounds , IObjectWithSizeF

Perintöjäsenet

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

Seuraava esimerkki osoittaa, miten muuttaa wmz-kuva Wmf-muodoksi

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

Seuraava esimerkki osoittaa, miten muuttaa wmf-kuva Wmz fromat

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

Seuraava esimerkki osoittaa, miten muunnetaan kompressoitu kuva (ja EMZ,.wmz, *.svgz) raster fromatille

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

Tämä esimerkki näyttää, miten ladata WMF-kuva tiedostosta ja muuntaa se SVG: lle WmfRasterizationOptionsin avulla.

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

Luo uusi esimerkki Aspose.Imaging.FileFormats.Wmf.WiMfImage luokka, aloittamalla senLisää manipulointia ja käsittelyä Windows Metafile (WMF) kuvan tiedot.rakentaja tarjoaa perustavanlaatuisen kohteen työskennellä WMF-kuvien kanssa, joka mahdollistaaWMF:n kuvan käsittelykapasiteettia sisällytetään sovellukseenja toiminnallisuutta.

[JsonConstructor]
public WmfImage()

WmfImage(Sisä, sisä)

Ajankohtainen uusi tapaus Aspose.Imaging.FileFormats.Wmf.WiMfImage luokka mukautettavissaleveyden ja korkeuden parametrit, mikä helpottaa valkoisten WMF-kuvien luomistamukautettu tiettyihin ulottuvuuksiin. Käytä tätä rakentajaa dynaamisesti tuottamaanWMF-kuvat täsmällisillä ulottuvuuksilla, jotka mahdollistavat joustavan kuvan luomisen jamanipulointi hakemuksesi sisällä.

public WmfImage(int width, int height)

Parameters

width int

Ja sen leveys.

height int

ja korkeuden.

Properties

BitsPerPixel

Vähennä kuvan pixel-bittin lukumäärää, mikä osoittaa värien tasonsyvyys tai granulaatio. Käytä tätä ominaisuutta kuvan värin määrittämiseksiesitys ja tarkkuus, mikä helpottaa yhteensopivuuden tarkastuksia ja väriin liittyviäkäsittelyä hakemuksesi sisällä.

[JsonIgnore]
public override int BitsPerPixel { get; }

Omistuksen arvo

int

Exceptions

NotImplementedException

FileFormat

Tutustu kuvaan liittyvään tiedostoformaatin arvoon, joka antaa tietojamuodosta, jossa kuvaa tallennetaan. Käytä tätä omaisuutta määrittääksesikuvan tiedostomuoto, joka helpottaa yhteensopivuuden tarkastuksia jamuoto-erityistä käsittelyä sovelluksessasi.

public override FileFormat FileFormat { get; }

Omistuksen arvo

FileFormat

FrameBounds

pääsy puitteen rajoihin, osoittaen sen sijainnin ja ulottuvuudenkuva. Käytä tätä omaisuutta saadaksesi yksityiskohtaisia tietoja puitteistaavaruuden sijainti, mikä mahdollistaa tarkan manipuloinnin ja rendering sovelluksessasi.

public Rectangle FrameBounds { get; }

Omistuksen arvo

Rectangle

korkeus

Pääsy kuvan korkeuteen, joka edustaa pikselien lukumäärää sen pystysuunnassaKäytä tätä ominaisuutta havaita kuvan tilavuus ja ulottuvuusratio, mikä mahdollistaa tarkan asetuksen ja suorittaa mukautuksia sovelluksessasi.

public override float HeightF { get; }

Omistuksen arvo

float

Exceptions

NotImplementedException

Inch

Pääsy tai muokkaa tuuman omaisuutta, joka edustaa mittausyksikköä tyypillisestikäytetään fyysisten ulottuvuuksien määrittämiseen tulostus- tai näyttökohteissa.omaisuus asettaa tai peruuttaa kuvan kanssa liittyvät tuuman arvot,helpottaa fyysisten ulottuvuuksien tarkkaa esittämistä sovelluksessasi.

public int Inch { get; set; }

Omistuksen arvo

int

IsCached

Palauta boolean-arvo, joka osoittaa, onko kohteen tiedot tällä hetkellä tallennettu,poistaa tarve lisätietojen lukemiseen. Käytä tätä omaisuuttasuorituskyvyn optimointi määrittämällä, onko kohteen tiedot helposti saatavillailman tarvetta kalliille tietojen keräämisen prosesseille hakemuksessasi.

public override bool IsCached { get; }

Omistuksen arvo

bool

Exceptions

NotImplementedException

Säätiö

Tutustu kuvan leveyteen, joka osoittaa pikselin määrän sen pitkinhorisontaalinen aasi. Käytä tätä ominaisuutta kuvan tilavuuden määrittämiseksija aspektin suhteen, mikä mahdollistaa tarkan asetuksen ja suorittaa mukautuksia sisälläja sovellus.

public override float WidthF { get; }

Omistuksen arvo

float

Exceptions

NotImplementedException

Methods

AddRecord(WmfObject)

Sisällytä määritetty tallennusobjekti kuviin, rikastamalla sen sisältöäLisätiedot tai metatiedot. Käytä tätä menetelmää integroidaksesi rekisterinesineitä kuviin, mikä helpottaa kokonaisvaltaista tietojen tallentamista ja organisaatiotahakemuksesi sisällä.

public int AddRecord(WmfObject record)

Parameters

record WmfObject

Tämä ennätys .

Returns

int

Rekisterin lukumäärä

CacheData()

tallentaa tiedot tehokkaasti, poistamalla tarve lisätä lataustaalakohtainen Aspose.Imaging.DataStreamSupporter.data StreamContainer. Käytä tätämenetelmä suorituskyvyn optimoimiseksi ja resurssien käytön vähentämiseksi sovelluksessasitallentamalla ja pääsemällä paikalliseen tietokantaan.

public override void CacheData()

Examples

Tämä esimerkki näyttää, miten ladata WMF-kuva tiedostosta ja luetella kaikki sen arkistot.

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

Korjaa kuvan kanssa yhdistettyjä oletusarvoisia vaihtoehtoja, jotka tarjoavat pääsynmääriteltyjä asetuksia tai konfiguraatioita. Käytä tätä menetelmää oletusarvoiseen pääsyynasetukset kuvankäsittelyn toiminnoille, jotka helpottavat johdonmukaisuutta ja mukavuuttasovelluksen toiminnallisuuden sisällä.

public override ImageOptionsBase GetDefaultOptions(object[] args)

Parameters

args object []

ja argumentit .

Returns

ImageOptionsBase

Oletusvaihtoehtoja

GetOriginalOptions()

Saat alkuperäisen kuvan vaihtoehdon.

public override ImageOptionsBase GetOriginalOptions()

Returns

ImageOptionsBase

Alkuperäisen kuvan vaihtoehdot.

GetPostScript()

Tutustu PostScript-tietoihin, jotka liittyvät kuviin ja tarjoavat yksityiskohtaiset tiedottiedot sen rakenteesta tai sisällöstä. Käytä tätä menetelmää saadaksesiPostScript-tiedot lisäanalyysille tai käsittelylle sovelluksessasi,edistyneen PostScript rendering tai manipulointi liittyviä toimintoja.

public string GetPostScript()

Returns

string

Postin käsikirjoitus

GetUsedFonts()

Muokkaa metafyylissä käytettyjen kirjainten luettelo, joka antaa tietoakuvassa käytetyt fontit. Käytä tätä menetelmää fontin käytön analysoimiseksija varmistetaan fontin saatavuus suorittamiseen tai jatkokäsittelyyn sovelluksessasi.

public override string[] GetUsedFonts()

Returns

string []

Fontin luettelo

ResizeCanvas(Rectangle)

Muokkaa kuvan kankaat ja säädä sen ulottuvuuksia samalla kun kuvaa säilytetään.Käytä tätä menetelmää muuttaa kaapelin koon muuttamattasisällön, helpottaen asetuksen mukautuksia ja koostumuksen muutoksia sisälläja sovellus.

public override void ResizeCanvas(Rectangle newRectangle)

Parameters

newRectangle Rectangle

Uuden rehtorin mukaan.

Exceptions

NotImplementedException

SetPalette(IkolorPalette ja Bool)

Sovelletaan kuvaan määriteltyä paletta, mikä mahdollistaa värin räätälöinninKäytä tätä menetelmää visuaalisen renderingin jaerityisiä värivaikutuksia sovelluksessasi.

public override void SetPalette(IColorPalette palette, bool updateColors)

Parameters

palette IColorPalette

Paletti on asetettu.

updateColors bool

jos asetettu “todellinen” väri päivitetään uuden paletin mukaan; muuten värinindeksit pysyvät muuttumattomina. Huomaa, että muutamattomat indeksit saattavat rikkoa kuvan latauksessa, jos joillakin indekseillä on vastaamaton palettitiedosto.

Exceptions

NotImplementedException

 Suomi