Class WmfImage

Class WmfImage

Именује се: Aspose.Imaging.FileFormats.Wmf Асамблеја: Aspose.Imaging.dll (25.4.0)

Манипулишете слике Мицрософт Виндовс Метафил (ВМФ) са нашим АПИ-ом, без прекидаобрађивање и вектора и битмапа података складиштених у записима променљиве дужине.Рециклирајте, ротирајте и флип слике лако док постављате прилагођене палете слика.Конвертујете ВМФ датотеке у компресиране УМЗ формате или их сачувате у форматима слике растерza sveobuhvatnu upotrebu preko platformi i aplikacija.

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

Inheritance

object DisposableObject DataStreamSupporter Image VectorImage MetaImage WmfImage

Implements

IDisposable , IObjectWithBounds , IObjectWithSizeF

Наслеђени чланови

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

Следећи пример показује како конвертовати wmz слике у 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});
                                                                                }

Следећи пример показује како конвертовати ВМФ слике у ВМП

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

Следећи пример показује како конвертовати компресиране слике (ЕМЗ је,.wmz, *.svgz) да растер одјекат

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

Овај пример показује како да преузмете ВМФ слику из датотеке и конвертујете је у СВГ користећи ВмфРастеризацијаОпције.

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

Креирајте нову инстанцију класе Aspose.Imaging.FileFormats.Wmf.даље манипулисање и обрада података о слици Виндовс Метафиле (ВМФ).конструктор пружа основни објекат за рад са СМФ сликама, омогућавајућибеспрекорно интегрисање капацитета за обраду слике ВМФ-а у вашу апликацијуи функционалности .

[JsonConstructor]
public WmfImage()

WmfImage(Инт, Инт)

Инсталирајте нову инстанцију класе Aspose.Imaging.FileFormats.Wmf.WiMfImage са прилагодљивимширине и висине параметара, олакшавајући стварање белих WMF сликеприлагођен одређеним димензијама. користите овај конструктор да динамично генеришеWMF слике са прецизним димензијама, омогућавајући флексибилно креирање иманипулација у вашој апликацији.

public WmfImage(int width, int height)

Parameters

width int

То је ширина.

height int

То је висина.

Properties

BitsPerPixel

Смањите број бита по пикселу за слику, указујући ниво боједубина или грануларност. Искористите ову својство да бисте одредили боју сликерепрезентација и прецизност, олакшавајући провере компатибилности и боје повезанеОбрада унутар ваше апликације.

[JsonIgnore]
public override int BitsPerPixel { get; }

Вредност имовине

int

Exceptions

NotImplementedException

FileFormat

Приступ вредности формата датотеке повезане са сликом, пружајући информацијео формату у којем се слика чува. Искористите ову својство да бисте утврдилиформат датотеке слике, олакшавајући провере компатибилности иОбрада специфичног формата у вашој апликацији.

public override FileFormat FileFormat { get; }

Вредност имовине

FileFormat

FrameBounds

Приступ границама оквира, указујући на његову позицију и димензије унутарИскористите ову имовину да бисте добили детаљне информације о оквирупросторна локација, омогућавајући прецизну манипулацију и рендеринг унутар ваше апликације.

public Rectangle FrameBounds { get; }

Вредност имовине

Rectangle

Висока

Приступ висини слике, представљајући број пиксела дуж вертикалногкористите ову својство да бисте утврдили просторне димензије и аспект сликеоднос, омогућавајући тачан распоред и давање прилагођавања унутар ваше апликације.

public override float HeightF { get; }

Вредност имовине

float

Exceptions

NotImplementedException

Inch

Приступ или модификовање својства инча, представљајући јединицу мерења обичнокористи се за одређивање физичких димензија у контексту штампања или приказивања.имовина за утврђивање или узимање инча вредности повезане са сликом,олакшање тачног представљања физичких димензија у вашој апликацији.

public int Inch { get; set; }

Вредност имовине

int

IsCached

Вратите булеанску вредност која указује на то да ли су подаци објекта тренутно скривени,елиминисање потребе за додатним операцијама читања података.оптимизовати перформансе одређујући да ли су подаци објекта лако доступнибез потребе за скупим процесима прикупљања података унутар ваше апликације.

public override bool IsCached { get; }

Вредност имовине

bool

Exceptions

NotImplementedException

ВитхФ

Приступ ширини слике, указујући на број пиксела дуж његовехоризонталне осе. Искористите ову својство да бисте одредили просторне димензије сликеи однос аспекта, омогућавајући прецизно распоређење и давање прилагођавања унутар вашегапликације .

public override float WidthF { get; }

Вредност имовине

float

Exceptions

NotImplementedException

Methods

AddRecord(WmfObject)

Инкорпоришите одређени запис објекат у слику, обогаћујући његов садржај садодатни подаци или метадани. Користите ову методу да бисте беспрекорно интегрисали записобјекти у слику, олакшавајући свеобухватну складиштење података и организацијуУнутар ваше апликације.

public int AddRecord(WmfObject record)

Parameters

record WmfObject

То је рекорд.

Returns

int

Број рекорда .

CacheData()

Ефикасно сакрива податке, елиминишући потребу за додатним пуњењем изподложном Aspose.Imaging.DataStreamSupporter.datastreamContainer.Искористите овометода за оптимизацију перформанси и минимизирање употребе ресурса у вашој апликацијискладиштењем и приступом локалним подацима.

public override void CacheData()

Examples

Овај пример показује како да преузмете ВМФ слику из датотеке и наведете све његове записе.

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(Објекат[])

Поправити подразумеване опције повезане са сликом, пружајући приступпретходно дефинисане подешавања или конфигурације. користите ову методу да бисте приступили подразумевањуподешавања за операције обраде слике, олакшавајући конзистентност и удобносту функционалности ваше апликације.

public override ImageOptionsBase GetDefaultOptions(object[] args)

Parameters

args object []

i argumentima .

Returns

ImageOptionsBase

Default opcije

GetOriginalOptions()

Добијте оригиналне опције слике.

public override ImageOptionsBase GetOriginalOptions()

Returns

ImageOptionsBase

Оригиналне опције слике.

GetPostScript()

Приступ подацима ПостСкрипта повезаним са сликом, пружајући детаљне информацијеинформације о својој структури или садржају. користите овај метод да бисте добилиPostScript подаци за даљу анализу или обраду унутар ваше апликације,омогућавање напредне функционалности везане за ПостСкрипт рендеринг или манипулацију.

public string GetPostScript()

Returns

string

Пост Скрипт

GetUsedFonts()

Вратите листу шрифтова који се користе у метафилу, пружајући увид уресурси шрифта који се користе у слици. Искористите ову методу да бисте анализирали употребу штампаи обезбедити доступност шрифта за испоруку или даље обраду унутар ваше апликације.

public override string[] GetUsedFonts()

Returns

string []

Списак шрифта

ResizeCanvas(Rectangle)

Рециклирајте канусе слике, прилагођавајући његове димензије док задржава сликуКористите овај метод да промените величину канова без променесадржај, олакшавајући подешавања распореда и промене састава у вашемапликације .

public override void ResizeCanvas(Rectangle newRectangle)

Parameters

newRectangle Rectangle

Нови правоугао.

Exceptions

NotImplementedException

SetPalette(ИЦОЛОРПАЛЕТ, БООЛ)

Нанесите одређену палету на слику, омогућавајући прилагођавање бојеИскористите ову методу како бисте побољшали визуелни рендеринг испецифичне ефекте боје у вашој апликацији.

public override void SetPalette(IColorPalette palette, bool updateColors)

Parameters

palette IColorPalette

Палет је постављен.

updateColors bool

ако је постављена на “истинске” боје ће бити ажурирана према новој палети; иначе индекси боја остају непромењени.

Exceptions

NotImplementedException

 Српски