Class EmfRectangle

Class EmfRectangle

Der Name: Aspose.Imaging.FileFormats.Emf.Emf.Records Versammlung: Aspose.Imaging.dll (25.4.0)

Der EMR_RECTANGLE-Rekord zieht einen Rechtang. Der Rechtang wird durch die Verwendung des aktuellen Penund gefüllt durch die Verwendung der aktuellen Brush.

public sealed class EmfRectangle : EmfDrawingRecordType

Inheritance

object MetaObject EmfRecord EmfDrawingRecordType EmfRectangle

Vererbte Mitglieder

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

Remarks

Die aktuelle Position wird weder von Rectangle verwendet noch aktualisiert.Wenn eine PS_NULL Pen verwendet wird, sind die Dimensionen des Rechteckens 1 Pixel weniger in Höhe und 1 Pixel wenigerin der Breite.

Constructors

EmfRectangle(EmfRecord)

Initialisiert eine neue Instanz der Aspose.Imaging.FileFormats.Emf.Emf.Records.EmfRectangle Klasse.

public EmfRectangle(EmfRecord source)

Parameters

source EmfRecord

Die Quelle.

EmfRectangle()

Initialisiert eine neue Instanz der Aspose.Imaging.FileFormats.Emf.Emf.Records.EmfRectangle Klasse.

public EmfRectangle()

Examples

Das folgende Beispiel zeigt, wie die Hintergrundfarbe für EMF festgelegt wird. Es legt vor dem Zeichnen aller anderen Objekte tatsächlich einen Rechtangel der Hintergrundfarbe.

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

Box

Er erhält oder setzt ein 128-Bit-WMF RectL-Objekt, wie in Abschnitt 2.2.2.19 [MS-WMF] angegeben, dasAngeben Sie den Inclusive-Inclusive-Rechtang zum Zeichnen.

public Rectangle Box { get; set; }

Eigentumswert

Rectangle

Sehen Sie auch

EmfDrawingRecordType

 Deutsch