Class EmfCreateBrushIndirect

Class EmfCreateBrushIndirect

نام ها : Aspose.Imaging.FileFormats.Emf.Emf.Records جمع آوری: Aspose.Imaging.dll (25.4.0)

رکورد EMR_CREATEBRUSHINDIRECT یک برش منطقی برای عملیات گرافیک را تعریف می کند.

public sealed class EmfCreateBrushIndirect : EmfObjectCreationRecordType

Inheritance

object MetaObject EmfRecord EmfObjectCreationRecordType EmfCreateBrushIndirect

اعضای ارثی

EmfRecord.Type , EmfRecord.Size , object.GetType() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()

Constructors

EmfCreateBrushIndirect(EmfRecord)

شروع یک مثال جدید از Aspose.Imaging.FileFormats.Emf.Emf.Records.EmfCreateBrushIndirect کلاس.

public EmfCreateBrushIndirect(EmfRecord source)

Parameters

source EmfRecord

منبع است.

EmfCreateBrushIndirect()

شروع یک مثال جدید از Aspose.Imaging.FileFormats.Emf.Emf.Records.EmfCreateBrushIndirect کلاس.

public EmfCreateBrushIndirect()

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 &lt; 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

IhBrush

دریافت یا تنظیم یک کل 32 بیتی نامشخص است که شاخص شی منطقی را مشخص می کنددر جدول اشیاء EMF (قسمت 3.1.1.1) این شاخص باید ذخیره شود تا بتوانداستفاده مجدد یا اصلاح شده

public int IhBrush { get; set; }

ارزش املاک

int

LogBrush

دریافت یا تنظیم یک شی LogBrushEx (قسمت 2.2.12) که مشخص سبک، رنگ، والگوی برش منطقی: میدان BrushStyle در این اشیاء باید BS_SOLID باشد.BS_HATCHED یا BS_NULL.

public EmfLogBrushEx LogBrush { get; set; }

ارزش املاک

EmfLogBrushEx

 فارسی