Class EmfRectangle
Nombre del espacio: Aspose.Imaging.FileFormats.Emf.Emf.Records Asamblea: Aspose.Imaging.dll (25.4.0)
El registro EMR_RECTANGLE atrae un rectángulo. el rectángulo se ilustra mediante el uso de la pena corrientey llenado con el uso de la pulverización actual.
public sealed class EmfRectangle : EmfDrawingRecordType
Inheritance
object ← MetaObject ← EmfRecord ← EmfDrawingRecordType ← EmfRectangle
Miembros heredados
EmfRecord.Type ,y, EmfRecord.Size ,y, object.GetType() ,y, object.ToString() ,y, object.Equals(object?) ,y, object.Equals(object?, object?) ,y, object.ReferenceEquals(object?, object?) ,y, object.GetHashCode()
Remarks
La posición actual no se utiliza ni se actualiza por Rectangle.Si se utiliza una pena PS_NULL, las dimensiones del rectángulo son 1 pixel menos en altura y 1 pixel menos en altura.en el ancho.
Constructors
EmfRectangle(EmfRecord)
Inicia una nueva instancia de la clase Aspose.Imaging.FileFormats.Emf.Emf.Records.EmfRectangle.
public EmfRectangle(EmfRecord source)
Parameters
source
EmfRecord
La fuente.
EmfRectangle()
Inicia una nueva instancia de la clase Aspose.Imaging.FileFormats.Emf.Emf.Records.EmfRectangle.
public EmfRectangle()
Examples
El siguiente ejemplo muestra cómo configurar el color de fondo para EMF. De hecho, pone un rectángulo del color de fondo antes de dibujar todos los demás objetos.
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
Box
Objeto WMF RectL de 128 bits, especificado en la sección 2.2.2.19 de [MS-WMF], queespecifica el rectángulo inclusivo para dibujar.
public Rectangle Box { get; set; }