Class EmfSelectObject
نام ها : Aspose.Imaging.FileFormats.Emf.Emf.Records جمع آوری: Aspose.Imaging.dll (25.4.0)
ضبط EMR_SELECTOBJECT یک شی گرافیکی را به دستگاه پخش متافیل فعلی اضافه می کند.موضوع یا با شاخص آن در جدول اشیاء EMF (قسمت 3.1.1.1) یا با شاخص آن مشخص می شود.ارزش از فهرست StockObject (قسمت 2.1.31).
public sealed class EmfSelectObject : EmfRecord
Inheritance
object ← MetaObject ← EmfRecord ← EmfSelectObject
اعضای ارثی
EmfRecord.Type , EmfRecord.Size , object.GetType() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()
Constructors
EmfSelectObject(EmfRecord)
شروع یک مثال جدید از کلاس Aspose.Imaging.FileFormats.Emf.Emf.Records.EmfSelectObject.
public EmfSelectObject(EmfRecord record)
Parameters
record
EmfRecord
رکورد است.
EmfSelectObject()
شروع یک مثال جدید از کلاس Aspose.Imaging.FileFormats.Emf.Emf.Records.EmfSelectObject.
public EmfSelectObject()
Examples
مثال زیر نشان می دهد که چگونه رنگ پس زمینه را برای EMF تنظیم کنید.در واقع قبل از نقاشی تمام اشیاء دیگر، یک مستطیل از رنگ پس زمینه قرار می دهد.
string dir = "c:\\aspose.imaging\\issues\\net\\3280\\";
string inputFilePath = dir + "image1.emf";
string outputFilePath = dir + "ChangeBackground_" + "image1.emf";
using (Aspose.Imaging.FileFormats.Emf.MetaImage image = (Aspose.Imaging.FileFormats.Emf.MetaImage)Aspose.Imaging.Image.Load(inputFilePath))
{
AddBackgroundRectangleEmf((Aspose.Imaging.FileFormats.Emf.EmfImage)image, Aspose.Imaging.Color.Blue);
image.Save(outputFilePath);
}
/// <summary>
/// Helper method to change EMF background.
/// </summary>
public static void AddBackgroundRectangleEmf(Aspose.Imaging.FileFormats.Emf.EmfImage image, Aspose.Imaging.Color color)
{
image.CacheData();
if (image.Records.Count < 1)
{
return;
}
//Set Rectangle
Aspose.Imaging.FileFormats.Emf.Emf.Records.EmfRectangle rectangle = new Aspose.Imaging.FileFormats.Emf.Emf.Records.EmfRectangle();
rectangle.Box = image.Header.EmfHeader.Bounds;
//Set Brush
Aspose.Imaging.FileFormats.Emf.Emf.Records.EmfCreateBrushIndirect brush = new Aspose.Imaging.FileFormats.Emf.Emf.Records.EmfCreateBrushIndirect();
brush.LogBrush = new Aspose.Imaging.FileFormats.Emf.Emf.Objects.EmfLogBrushEx();
brush.LogBrush.Argb32ColorRef = color.ToArgb();
// Object indexes start at 1; zero is reserved for references to the metafile itself, see
// https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-emf/e4fa4e63-9096-4cdc-b776-85e2a1e4e1f4
brush.IhBrush = 1;
//Select brush
Aspose.Imaging.FileFormats.Emf.Emf.Records.EmfSelectObject selectObject = new Aspose.Imaging.FileFormats.Emf.Emf.Records.EmfSelectObject();
selectObject.ObjectHandle = 1;
//Remove brush
Aspose.Imaging.FileFormats.Emf.Emf.Records.EmfDeleteObject deleteObject = new Aspose.Imaging.FileFormats.Emf.Emf.Records.EmfDeleteObject();
deleteObject.ObjectHandle = 1;
//Add records
image.Records.Insert(1, brush);
image.Records.Insert(2, selectObject);
image.Records.Insert(3, rectangle);
image.Records.Insert(4, deleteObject);
}
Properties
ObjectHandle
دریافت یا تنظیم یک کل 32 بیتی نامشخص که هر دو شاخص یک شی گرافیک را مشخص می کنددر جدول اشیاء EMF یا شاخص یک اشیاء سهام از لیست Aspose.Imaging.FileFormats.Emf.Emf.Consts.EmfStockObject.
public int ObjectHandle { get; set; }