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,БС_HATCHED или BS_NULL

public EmfLogBrushEx LogBrush { get; set; }

Стоимость недвижимости

EmfLogBrushEx

 Русский