Class WmfImage

Class WmfImage

Nazwa przestrzeń: Aspose.Imaging.FileFormats.Wmf Zgromadzenie: Aspose.Imaging.dll (25.4.0)

Manipulacja obrazów Microsoft Windows Metafile (WMF) z naszą API, bezprzewodowoprzetwarzanie zarówno danych wektorowych, jak i bitmapowych przechowywanych w rejestrach o zmiennej długości.Odśwież, obróć i flip obrazy z łatwością podczas ustawienia dostosowanych palet obrazu.Konwertuj pliki WMF do formatów kompresowanych lub przechowuj je w formach obrazów rasterowychdo wszechstronnego użytkowania na platformach i aplikacjach.

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

Inheritance

object DisposableObject DataStreamSupporter Image VectorImage MetaImage WmfImage

Implements

IDisposable , IObjectWithBounds , IObjectWithSizeF

Dziedziczeni członkowie

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

Poniższy przykład pokazuje, jak przekonwertować wmz obrazy do odtwarzania 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});
                                                                                }

Poniższy przykład pokazuje, jak przekonwertować obrazy wmf do odtwarzania Wmz

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

Poniższy przykład pokazuje, jak konwertować kompresowane obrazy (i EMZ,.wmz, *.svgz) do 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});
                                                                                                                    }
                                                                                                                }

Ten przykład pokazuje, jak pobrać obraz WMF z pliku i przekonwertować go do SVG za pomocą opcji 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()

Tworzenie nowej instancji klasy Aspose.Imaging.FileFormats.Wmf.WiMfImage, inicjalizując ją dodalsza manipulacja i przetwarzanie danych obrazowych Windows Metafile (WMF).konstruktor zapewnia podstawowy obiekt do pracy z obrazami WMF, umożliwiającBezwzględna integracja zdolności obsługi obrazu WMF w aplikacjii funkcjonalności .

[JsonConstructor]
public WmfImage()

WmfImage(i int, int)

Zainstaluj nową instancję klasy Aspose.Imaging.FileFormats.Wmf.szerokość i wysokość parametrów, ułatwiając tworzenie białe obrazy WMFDostosowany do określonych wymiarów.Użyj tego konstruktora do dynamicznego generowaniaWMF obrazy z precyzyjnymi wymiarami, umożliwiając elastyczne tworzenie obrazów iManipulacja w Twojej aplikacji.

public WmfImage(int width, int height)

Parameters

width int

i szerokości .

height int

i wysokość .

Properties

BitsPerPixel

Pobierz liczbę bitów na piksel dla obrazu, wskazując poziom kolorugłębokość lub granularność. Użyj tej właściwości, aby określić kolor obrazureprezentowanie i precyzja, ułatwiając sprawdzenie zgodności i kolorowePrzetwarzanie w ramach Twojej aplikacji.

[JsonIgnore]
public override int BitsPerPixel { get; }

Wartość nieruchomości

int

Exceptions

NotImplementedException

FileFormat

Dostęp do wartości formatu pliku powiązanego z obrazem, dostarczając informacjio formacie, w którym obraz jest przechowywany.Użyj tej właściwości, aby określićformat pliku obrazu, ułatwiając sprawdzenie zgodności iPrzetwarzanie formatu w Twojej aplikacji.

public override FileFormat FileFormat { get; }

Wartość nieruchomości

FileFormat

FrameBounds

Dostęp do granic ramy, wskazując jej położenie i wymiary wWykorzystaj tę nieruchomość, aby uzyskać szczegółowe informacje na temat ramlokalizacja przestrzenna, umożliwiając dokładną manipulację i renderowanie w Twojej aplikacji.

public Rectangle FrameBounds { get; }

Wartość nieruchomości

Rectangle

WysokośćF

Dostęp do wysokości obrazu, reprezentując liczbę pikseli wzdłuż jego pionowejAxis.Użyj tej właściwości, aby ustalić rozmiary przestrzenne i aspekt obrazuratio, umożliwiając dokładne rozmieszczenie i dokonanie dostosowania w ramach aplikacji.

public override float HeightF { get; }

Wartość nieruchomości

float

Exceptions

NotImplementedException

Inch

Dostęp lub modyfikacja właściwości cala, reprezentując jednostkę pomiarową typowoWykorzystywane do określenia fizycznych wymiarów w kontekście drukowania lub wyświetlania.majątku do ustalenia lub odzyskania wartości cala powiązanych z obrazem,ułatwianie dokładnej reprezentacji wymiarów fizycznych w Twojej aplikacji.

public int Inch { get; set; }

Wartość nieruchomości

int

IsCached

Odzyskanie wartości boolean wskazującej, czy dane obiektu są obecnie przechowywane,eliminowanie potrzeby dalszych operacji czytania danych.Użyj tej nieruchomoścido optymalizacji wydajności poprzez ustalenie, czy dane obiektów są łatwo dostępnebez konieczności kosztownych procesów odzyskiwania danych w Twojej aplikacji.

public override bool IsCached { get; }

Wartość nieruchomości

bool

Exceptions

NotImplementedException

WidthF

Dostęp do szerokości obrazu, wskazując liczbę pikseli wzdłuż jegoosi horyzontalnej.Użyj tej właściwości, aby określić rozmiary przestrzenne obrazui stosunek aspektu, umożliwiając dokładne rozmieszczenie i dokonanie dostosowania w Twoimw aplikacji .

public override float WidthF { get; }

Wartość nieruchomości

float

Exceptions

NotImplementedException

Methods

AddRecord(WmfObject)

Włącz określony obiekt rejestracyjny do obrazu, wzbogacając jego zawartośćdodatkowe dane lub metadane.Użyj tej metody, aby bezprzewodowo zintegrować rekordyobiektów w obrazie, ułatwiając kompleksowe przechowywanie i organizację danychw ramach Twojego wniosku.

public int AddRecord(WmfObject record)

Parameters

record WmfObject

z rekordem .

Returns

int

Ilość rekordów.

CacheData()

Efektywnie przechowywać dane, eliminując potrzebę dodatkowego ładowania zpodtytuł Aspose.Imaging.DataStreamSupporter.PrzekierowanoMetoda optymalizacji wydajności i minimalizacji wykorzystania zasobów w Twojej aplikacjiprzechowywanie i dostęp do lokalnej cache danych.

public override void CacheData()

Examples

Ten przykład pokazuje, jak pobrać obraz WMF z pliku i wymienić wszystkie jego rekordy.

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

Usuń opcje domyślne powiązane z obrazem, zapewniając dostęp dowstępnie zdefiniowane ustawienia lub konfiguracje. użyj tej metody, aby uzyskać dostęp domyślnieustawienia operacji przetwarzania obrazu, ułatwiające spójność i wygodęw ramach funkcjonalności aplikacji.

public override ImageOptionsBase GetDefaultOptions(object[] args)

Parameters

args object [ ]

i argumentów .

Returns

ImageOptionsBase

Opcje domyślne

GetOriginalOptions()

Dostęp do oryginalnych opcji obrazu.

public override ImageOptionsBase GetOriginalOptions()

Returns

ImageOptionsBase

Opcje oryginalnego obrazu.

GetPostScript()

Dostęp do danych PostScript powiązanych z obrazem, zapewniając szczegółowe informacjeinformacje o jego strukturze lub zawartości. użyj tej metody, aby uzyskaćDane PostScript do dalszej analizy lub przetwarzania w Twojej aplikacji,umożliwienie zaawansowanej funkcjonalności związanej z renderowaniem lub manipulacją PostScript.

public string GetPostScript()

Returns

string

Post Scenariusz

GetUsedFonts()

Przywróć listę używanych czcionek w metafizie, zapewniając wgląd wzasoby czcionki wykorzystywane w obrazie.Użyj tej metody do analizy używania fontówi zapewnienie dostępności czcionek do renderowania lub dalszego przetwarzania w ramach aplikacji.

public override string[] GetUsedFonts()

Returns

string [ ]

Lista fontów

ResizeCanvas(Rectangle)

Odśwież przewód obrazu, dostosowując jego wymiary przy jednoczesnym utrzymaniu obrazówUżyj tej metody, aby zmienić rozmiar kanałów bez zmianyzawartość, ułatwiając ustawienia układu i zmiany składowe w Twoimw aplikacji .

public override void ResizeCanvas(Rectangle newRectangle)

Parameters

newRectangle Rectangle

Nowy rektangul.

Exceptions

NotImplementedException

SetPalette(IkolorPalette, Bool)

Zastosuj określony paletę do obrazu, umożliwiając dostosowanie koloruWykorzystaj tę metodę, aby poprawić renderowanie wizualne iSpecyficzne efekty kolorowe w Twojej aplikacji.

public override void SetPalette(IColorPalette palette, bool updateColors)

Parameters

palette IColorPalette

Płytka do ustawienia.

updateColors bool

Jeśli ustawione na “prawdziwe” kolory zostaną zaktualizowane zgodnie z nową paletą; w przeciwnym razie indeksy kolorów pozostają niezmienione.

Exceptions

NotImplementedException

 Polski