Class WmfImage

Class WmfImage

Названий на: Aspose.Imaging.FileFormats.Wmf Асамблея: Aspose.Imaging.dll (25.4.0)

Маніпулювати зображення Microsoft Windows Metafile (WMF) з нашою API, безперервнообробка як векторних, так і bitmap даних, що зберігаються в записах змінної довжини.Відновлення, обертання та фліп зображень з легкістю при налаштуванні персоналізованих палеток.Конвертуйте файли WMF в компресовані формати WmZ або збережіть їх у форматах зображення rasterдля різноманітного використання через платформи та додатки.

[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 fromat

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

Наступний приклад показує, як конвертувати зображення WMF в 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});
                                                                                }

Наступний приклад показує, як конвертувати компресовані зображення (і EMZ,.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});
                                                                                                                    }
                                                                                                                }

Цей приклад показує, як завантажити зображення WMF з файлу і конвертувати його в SVG за допомогою WmfRasterizationOptions.

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

                                                                                                                      // Using Aspose.Imaging.Image.Load is a unified way to load all types of images including WMF.
                                                                                                                      using (Aspose.Imaging.FileFormats.Wmf.WmfImage wmfImage = (Aspose.Imaging.FileFormats.Wmf.WmfImage)Aspose.Imaging.Image.Load(dir + "test.wmf"))
                                                                                                                      {
                                                                                                                          Aspose.Imaging.ImageOptions.SvgOptions saveOptions = new Aspose.Imaging.ImageOptions.SvgOptions();

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

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

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

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

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

                                                                                                                          saveOptions.VectorRasterizationOptions = rasterizationOptions;

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

Constructors

WmfImage()

Створіть нову інстанцію класу Aspose.Imaging.FileFormats.Wmf.MfImage, ініціюючи її дляподальша маніпуляція та обробка даних зображення Windows Metafile (WMF).конструктор забезпечує фундаментальний об’єкт для роботи з зображеннями WMF, що дозволяєбезперервна інтеграція можливостей обробки зображень WMF в вашу програмуфункціонування .

[JsonConstructor]
public WmfImage()

WmfImage(ІТ, ІТ)

Налаштуйте нову інстанцію класу Aspose.Imaging.FileFormats.Wmf.Параметри ширини і висоти, що сприяє створенню білих зображень 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

Цей приклад показує, як завантажити зображення WMF з файлу і перерахувати всі його записи.

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 [ ]

І аргументи .

Returns

ImageOptionsBase

Дефіцитні варіанти

GetOriginalOptions()

Виберіть оригінальні варіанти зображення.

public override ImageOptionsBase GetOriginalOptions()

Returns

ImageOptionsBase

Оригінальні варіанти зображення.

GetPostScript()

Доступ до даних PostScript, пов’язаних з зображенням, надаючи деталіінформація про її структуру або вміст. використовуйте цей метод для отриманнядані PostScript для подальшого аналізу або обробки в межах вашої програми,надання передових функцій, пов’язаних з відтворенням або маніпуляцією 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

 Українська