Class EmfCreateBrushIndirect

Class EmfCreateBrushIndirect

Navne til: Aspose.Imaging.FileFormats.Emf.Emf.Records Sammensætning: Aspose.Imaging.dll (25.4.0)

EMR_CREATEBRUSHINDIRECT-registret definerer en logisk brush til grafiske operationer.

public sealed class EmfCreateBrushIndirect : EmfObjectCreationRecordType

Inheritance

object MetaObject EmfRecord EmfObjectCreationRecordType EmfCreateBrushIndirect

De arvede medlemmer

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

Constructors

EmfCreateBrushIndirect(EmfRecord)

Initialiserer en ny instans af Aspose.Imaging.FileFormats.Emf.EMF.Records. EmfCreateBrushIndirect klasse.

public EmfCreateBrushIndirect(EmfRecord source)

Parameters

source EmfRecord

Den kilde.

EmfCreateBrushIndirect()

Initialiserer en ny instans af Aspose.Imaging.FileFormats.Emf.EMF.Records. EmfCreateBrushIndirect klasse.

public EmfCreateBrushIndirect()

Examples

Følgende eksempel viser, hvordan du indstiller baggrundsfarven for EMF. Det placerer faktisk en rektangle af baggrundfarvet, før du tegner alle andre objekter.

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

Få eller indsætte en 32-bit usigned integrator, der angiver indekset for det logiske brushobjekti EMF-objekttabellen (sektion 3.1.1.1). Denne indeks skal gemmes, så dette objekt kan væregenbrugt eller ændret.

public int IhBrush { get; set; }

Ejendomsværdi

int

LogBrush

modtager eller indsætter et LogBrushEx-objekt (sektion 2.2.12) som angiver stil, farve ogBrushStyle-feltet i dette objekt MUST være BS_SOLID,BS_HATCHED eller BS-NULL.

public EmfLogBrushEx LogBrush { get; set; }

Ejendomsværdi

EmfLogBrushEx

 Dansk