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; }
Вредност имовине
Exceptions
FileFormat
Приступ вредности формата датотеке повезане са сликом, пружајући информацијео формату у којем се слика чува. Искористите ову својство да бисте утврдилиформат датотеке слике, олакшавајући провере компатибилности иОбрада специфичног формата у вашој апликацији.
public override FileFormat FileFormat { get; }
Вредност имовине
FrameBounds
Приступ границама оквира, указујући на његову позицију и димензије унутарИскористите ову имовину да бисте добили детаљне информације о оквирупросторна локација, омогућавајући прецизну манипулацију и рендеринг унутар ваше апликације.
public Rectangle FrameBounds { get; }
Вредност имовине
Висока
Приступ висини слике, представљајући број пиксела дуж вертикалногкористите ову својство да бисте утврдили просторне димензије и аспект сликеоднос, омогућавајући тачан распоред и давање прилагођавања унутар ваше апликације.
public override float HeightF { get; }
Вредност имовине
Exceptions
Inch
Приступ или модификовање својства инча, представљајући јединицу мерења обичнокористи се за одређивање физичких димензија у контексту штампања или приказивања.имовина за утврђивање или узимање инча вредности повезане са сликом,олакшање тачног представљања физичких димензија у вашој апликацији.
public int Inch { get; set; }
Вредност имовине
IsCached
Вратите булеанску вредност која указује на то да ли су подаци објекта тренутно скривени,елиминисање потребе за додатним операцијама читања података.оптимизовати перформансе одређујући да ли су подаци објекта лако доступнибез потребе за скупим процесима прикупљања података унутар ваше апликације.
public override bool IsCached { get; }
Вредност имовине
Exceptions
ВитхФ
Приступ ширини слике, указујући на број пиксела дуж његовехоризонталне осе. Искористите ову својство да бисте одредили просторне димензије сликеи однос аспекта, омогућавајући прецизно распоређење и давање прилагођавања унутар вашегапликације .
public override float WidthF { get; }
Вредност имовине
Exceptions
Methods
AddRecord(WmfObject)
Инкорпоришите одређени запис објекат у слику, обогаћујући његов садржај садодатни подаци или метадани. Користите ову методу да бисте беспрекорно интегрисали записобјекти у слику, олакшавајући свеобухватну складиштење података и организацијуУнутар ваше апликације.
public int AddRecord(WmfObject record)
Parameters
record
WmfObject
То је рекорд.
Returns
Број рекорда .
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
GetDefaultOptions(Објекат[])
Поправити подразумеване опције повезане са сликом, пружајући приступпретходно дефинисане подешавања или конфигурације. користите ову методу да бисте приступили подразумевањуподешавања за операције обраде слике, олакшавајући конзистентност и удобносту функционалности ваше апликације.
public override ImageOptionsBase GetDefaultOptions(object[] args)
Parameters
args
object
[]
i argumentima .
Returns
Default opcije
GetOriginalOptions()
Добијте оригиналне опције слике.
public override ImageOptionsBase GetOriginalOptions()
Returns
Оригиналне опције слике.
GetPostScript()
Приступ подацима ПостСкрипта повезаним са сликом, пружајући детаљне информацијеинформације о својој структури или садржају. користите овај метод да бисте добилиPostScript подаци за даљу анализу или обраду унутар ваше апликације,омогућавање напредне функционалности везане за ПостСкрипт рендеринг или манипулацију.
public string GetPostScript()
Returns
Пост Скрипт
GetUsedFonts()
Вратите листу шрифтова који се користе у метафилу, пружајући увид уресурси шрифта који се користе у слици. Искористите ову методу да бисте анализирали употребу штампаи обезбедити доступност шрифта за испоруку или даље обраду унутар ваше апликације.
public override string[] GetUsedFonts()
Returns
string []
Списак шрифта
ResizeCanvas(Rectangle)
Рециклирајте канусе слике, прилагођавајући његове димензије док задржава сликуКористите овај метод да промените величину канова без променесадржај, олакшавајући подешавања распореда и промене састава у вашемапликације .
public override void ResizeCanvas(Rectangle newRectangle)
Parameters
newRectangle
Rectangle
Нови правоугао.
Exceptions
SetPalette(ИЦОЛОРПАЛЕТ, БООЛ)
Нанесите одређену палету на слику, омогућавајући прилагођавање бојеИскористите ову методу како бисте побољшали визуелни рендеринг испецифичне ефекте боје у вашој апликацији.
public override void SetPalette(IColorPalette palette, bool updateColors)
Parameters
palette
IColorPalette
Палет је постављен.
updateColors
bool
ако је постављена на “истинске” боје ће бити ажурирана према новој палети; иначе индекси боја остају непромењени.