Class WmfImage
İsim alanı : Aspose.Imaging.FileFormats.Wmf Toplantı: Aspose.Imaging.dll (25.4.0)
API’mizle Microsoft Windows Metafile (WMF) görüntüleri manipüle edin.Vektör ve bitmap verileri değişken uzunluk kayıtlarında kaydedilir.Resize, döndürün ve kolayca görüntüleri flip ederken özelleştirilmiş görüntü paletlerini ayarlayın.WMF dosyalarını sıkıştırılmış WMZ biçimlerine dönüştürün veya bunları raster görüntü biçimlerinde kaydedinÇeşitli platformlar ve uygulamalar üzerinden kullanılabilir.
[JsonObject(MemberSerialization.OptIn)]
public class WmfImage : MetaImage, IDisposable, IObjectWithBounds, IObjectWithSizeF
Inheritance
object ← DisposableObject ← DataStreamSupporter ← Image ← VectorImage ← MetaImage ← WmfImage
Implements
IDisposable , IObjectWithBounds , IObjectWithSizeF
mirasçı üyeleri
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
Aşağıdaki örnek, bir wmz görüntüsünü wmf fromat’a nasıl dönüştürdüğünü gösterir
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});
}
Aşağıdaki örnek, bir wmf görüntüsünü wmz fromat’a nasıl dönüştürdüğünü gösterir
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});
}
Aşağıdaki örnek bir kompres görüntü nasıl dönüştürülür gösterir (Emz için,.wmz, *.svgz) için raster fromat
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});
}
}
Bu örnek, bir dosyadan bir WMF görüntüsünü nasıl yüklediğinizi ve WmfRasterizationOptions kullanılarak SVG’ye dönüştürdüğünü gösterir.
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.WmfImage sınıfının yeni bir örneğini oluşturun.Windows Metafile (WMF) görüntü verilerinin daha fazla manipülasyonu ve işlenmesi.yapımcı WMF görüntüleri ile çalışmak için temel bir nesne sağlar,WMF görüntü işleme kapasitelerinin uygulamanızın içine entegre edilmesiişlevselliği .
[JsonConstructor]
public WmfImage()
WmfImage(int , int , int)
Aspose.Imaging.FileFormats.Wmf.WmfImage sınıfının yeni bir örneğini özelleştirilebilirgenişlik ve yükseklik parametreleri, beyaz WMF görüntüleri oluşturmayı kolaylaştırırbelirli boyutlara göre ayarlanmıştır. dinamik olarak üretmek için bu yapıyı kullanınWMF görüntüleri doğru boyutlara sahiptir, esnek görüntü oluşturma veUygulamanızın içindeki manipülasyon.
public WmfImage(int width, int height)
Parameters
width
int
Genişlik için.
height
int
Yükseklik için.
Properties
BitsPerPixel
Görüntü için piksel başına bit sayısını geri getirin, renk seviyesini gösterinderinlik veya granularite. resmin rengini belirlemek için bu özellik kullanınGörüntüleme ve doğruluk, uyumluluk kontrolü ve renk ile ilgili kolaylaştırmaBaşvuru içinde işlem yapılır.
[JsonIgnore]
public override int BitsPerPixel { get; }
Mülkiyet Değer
Exceptions
FileFormat
Görüntü ile ilişkili dosya biçimi değeri erişimi, bilgi sağlarGörüntünün kaydedildiği biçim hakkında. bu mülkü belirlemek için kullanıngörüntü dosya biçimi, uyumluluk kontrollerini kolaylaştırmak veUygulamanızın içindeki format özel işleme.
public override FileFormat FileFormat { get; }
Mülkiyet Değer
FrameBounds
Çerçeve sınırlarına erişmek, konumunu ve boyutlarını göstermekresim. bu mülkü çerçeve hakkında ayrıntılı bilgi almak için kullanınuzay konumu, uygulamanızda doğru manipülasyon ve rendering sağlar.
public Rectangle FrameBounds { get; }
Mülkiyet Değer
Yüksek F
Görüntü yüksekliğine erişmek, piksel sayısını vertikal olarak temsil eder.axis. resmin uzay boyutlarını ve yönünü belirlemek için bu özellik kullanın.oran, uygulamanızın içindeki doğru düzen ve düzeltmelerin gerçekleştirilmesini sağlar.
public override float HeightF { get; }
Mülkiyet Değer
Exceptions
Inch
Inç özelliklerine erişmek veya değiştirmek, tipik ölçüm birimi temsil ederBaskı veya görüntüleme bağlamlarında fiziksel boyutları belirlemek için kullanılır.resim ile ilişkili inç değerleri belirlemek veya geri almak için mülk,Uygulamanızdaki fiziksel boyutların doğru temsil edilmesini kolaylaştırmak.
public int Inch { get; set; }
Mülkiyet Değer
IsCached
Bir nesnenin verilerinin şu anda gizli olup olmadığını gösteren bir boolean değeri geri getirin,Ek veri okuma işlemleri için gerekliliği ortadan kaldırmak.Bu mülkü kullanınnesnenin verilerinin kolayca kullanılabilir olup olmadığını belirleyerek performansı optimize etmekBaşvuru içinde pahalı veri geri alma işlemleri gerektirmez.
public override bool IsCached { get; }
Mülkiyet Değer
Exceptions
WidthF
Görüntü genişliğine erişmek, piksel sayısını göstermekhorizontal axis. resmin uzay boyutlarını belirlemek için bu özellik kullanınve yön oranı, doğru düzen ve sizin içindeki ayarları gerçekleştirmek için izinUygulama için.
public override float WidthF { get; }
Mülkiyet Değer
Exceptions
Methods
AddRecord(WmfObject)
Belirlenen kayıt nesnesini görüntüye dahil edin, içeriğini zenginleştirinEk veriler veya metadata. bu yöntemi çarpıcı bir şekilde kayıtları entegre etmek için kullanınGörüntüye giren nesneler, kapsamlı veri depolama ve organizasyonu kolaylaştırırSizin başvuru içinde.
public int AddRecord(WmfObject record)
Parameters
record
WmfObject
Rekor için.
Returns
Rekor sayısı
CacheData()
Verileri verimli bir şekilde gizlemek, ek yükleme ihtiyacını ortadan kaldırmakaşağıda Aspose.Imaging.DataStreamSupporter.DataStreamContainer.Uygulamanızda performansı optimize etmek ve kaynak kullanımını en aza indirmek için bir yöntemYerel verilerin kaydedilmesi ve erişimi.
public override void CacheData()
Examples
Bu örnek, bir dosyadan bir WMF görüntüsünü nasıl yükleyeceğinizi ve tüm kayıtlarını listeleyeceğinizi gösterir.
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(nesne[])
Görüntü ile ilişkili varsayılan seçenekleri geri yükleme, erişim sağlarvarsayılan ayarlar veya yapılandırmalar. bu yöntemi varsayılan erişim için kullanınGörüntü işleme işlemleri için ayarlar, tutarlılık ve konforu kolaylaştırırUygulamanızın işlevselliği içinde.
public override ImageOptionsBase GetDefaultOptions(object[] args)
Parameters
args
object
[…]
ve argümanları.
Returns
Default seçenekleri
GetOriginalOptions()
Orijinal görüntü seçenekleri alın.
public override ImageOptionsBase GetOriginalOptions()
Returns
Orijinal görüntü seçenekleri.
GetPostScript()
Görüntü ile ilişkili PostScript verilerine erişim, ayrıntılı bilgi sağlaryapısı veya içeriği hakkında bilgi. bu yöntemi kullanarakPostScript verileri, uygulamanızda daha fazla analiz veya işlem için,PostScript rendering veya manipülasyon ile ilgili gelişmiş işlevselliği sağlar.
public string GetPostScript()
Returns
Post Senaryo
GetUsedFonts()
Metafizde kullanılan yazı tiplerinin listesini geri getirin, metafizde kullanılan yazı tiplerinin içine bir bakış açısı sağlar.Görüntüde kullanılan yazı tipi kaynakları. bu yöntemi yazı tipi kullanımını analiz etmek için kullanınve yazı tipi sunulması veya uygulamanızda daha fazla işleme sunulması için kullanılabilirliğini sağlamak.
public override string[] GetUsedFonts()
Returns
string […]
font listesi
ResizeCanvas(Rectangle)
Görüntünün kanvasını yeniden düzenleyin, boyutlarını ayarlayın ve görüntüyi koruyun.Bu yöntemi kullanarak kanvasın boyutunu değiştirmeden değiştirin.içeriği, düzen ayarlarını ve kompozisyon değişikliklerini kolaylaştırırUygulama için.
public override void ResizeCanvas(Rectangle newRectangle)
Parameters
newRectangle
Rectangle
Yeni bir düzlem.
Exceptions
SetPalette(İKOLORPALET, BOOL)
Resime belirli bir palet uygulayın, renklerin özelleştirilmesini sağlarBu yöntemi görsel performansı ve performansı artırmak için kullanın.Uygulamanızda belirli renk efektleri.
public override void SetPalette(IColorPalette palette, bool updateColors)
Parameters
palette
IColorPalette
Palet ayarlamak için.
updateColors
bool
Eğer ‘gerçek’ renkler ayarlanırsa, yeni paletine göre güncellenir; aksi takdirde renk göstergeleri değişmez kalır. değiştirilmemiş göstergeler, bazı göstergelerin eşitsiz palet girişleri varsa yükleme görüntüsünü bozabilir.