EmfRectangle
Innehåll
[
Dölj
]EmfRectangle(EmfRecord)
Initierar en ny instans avEmfRectangle
class.
public EmfRectangle(EmfRecord source)
Parameter | Typ | Beskrivning |
---|---|---|
source | EmfRecord | Källan. |
Se även
- class EmfRecord
- class EmfRectangle
- namnutrymme Aspose.Imaging.FileFormats.Emf.Emf.Records
- hopsättning Aspose.Imaging
EmfRectangle()
Initierar en ny instans avEmfRectangle
class.
public EmfRectangle()
Exempel
Följande exempel visar hur du ställer in bakgrundsfärgen för EMF. Det sätter faktiskt en rektangel av bakgrundsfärgen innan alla andra objekt ritas.
[C#]
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>
/// Hjälpmetod för att ändra EMF-bakgrund.
/// </summary>
public static void AddBackgroundRectangleEmf(Aspose.Imaging.FileFormats.Emf.EmfImage image, Aspose.Imaging.Color color)
{
image.CacheData();
if (image.Records.Count < 1)
{
return;
}
//Ange rektangel
Aspose.Imaging.FileFormats.Emf.Emf.Records.EmfRectangle rectangle = new Aspose.Imaging.FileFormats.Emf.Emf.Records.EmfRectangle();
rectangle.Box = image.Header.EmfHeader.Bounds;
//Ställ in borste
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();
// Objektindex börjar på 1; noll är reserverad för referenser till själva metafilen, se
// https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-emf/e4fa4e63-9096-4cdc-b776-85e2a1e4e1f4
brush.IhBrush = 1;
//Välj pensel
Aspose.Imaging.FileFormats.Emf.Emf.Records.EmfSelectObject selectObject = new Aspose.Imaging.FileFormats.Emf.Emf.Records.EmfSelectObject();
selectObject.ObjectHandle = 1;
//Ta bort borsten
Aspose.Imaging.FileFormats.Emf.Emf.Records.EmfDeleteObject deleteObject = new Aspose.Imaging.FileFormats.Emf.Emf.Records.EmfDeleteObject();
deleteObject.ObjectHandle = 1;
//Lägg till poster
image.Records.Insert(1, brush);
image.Records.Insert(2, selectObject);
image.Records.Insert(3, rectangle);
image.Records.Insert(4, deleteObject);
}
Se även
- class EmfRectangle
- namnutrymme Aspose.Imaging.FileFormats.Emf.Emf.Records
- hopsättning Aspose.Imaging