Class EmfRectangle
De naam: Aspose.Imaging.FileFormats.Emf.Emf.Records Verzameling: Aspose.Imaging.dll (25.4.0)
De EMR_RECTANGLE-record trekt een rectangle. de rektangel wordt uitgelegd met behulp van de huidige penen gevuld met behulp van de huidige brush.
public sealed class EmfRectangle : EmfDrawingRecordType
Inheritance
object ← MetaObject ← EmfRecord ← EmfDrawingRecordType ← EmfRectangle
Geëerbiede leden
EmfRecord.Type , EmfRecord.Size , object.GetType() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()
Remarks
De huidige positie wordt niet gebruikt of bijgewerkt door Rectangle.Als een PS_NULL pen wordt gebruikt, zijn de afmetingen van de rectangle 1 pixel minder in hoogte en 1 pixels minder.In de breedte.
Constructors
EmfRectangle(EmfRecord)
Initialiseert een nieuwe instantie van de Aspose.Imaging.FileFormats.Emf.Emp.Records.EnfRectangle-klasse.
public EmfRectangle(EmfRecord source)
Parameters
source
EmfRecord
De bron .
EmfRectangle()
Initialiseert een nieuwe instantie van de Aspose.Imaging.FileFormats.Emf.Emp.Records.EnfRectangle-klasse.
public EmfRectangle()
Examples
Het volgende voorbeeld laat zien hoe de achtergrondkleur voor EMF wordt ingesteld. het plaatst eigenlijk een rectangle van de agtergrond kleur voordat alle andere objecten worden getransformeerd.
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
ontvangt of instelt een 128-bits WMF RectL-object, zoals aangegeven in [MS-WMV] sectie 2.2.2.19, datDe inclusief-inclusief rectangle om te trekken.
public Rectangle Box { get; set; }