EmfDeleteObject
Innehåll
[
Dölj
]EmfDeleteObject(EmfRecord)
Initierar en ny instans avEmfDeleteObject
class.
public EmfDeleteObject(EmfRecord record)
Parameter | Typ | Beskrivning |
---|---|---|
record | EmfRecord | Skivan. |
Se även
- class EmfRecord
- class EmfDeleteObject
- namnutrymme Aspose.Imaging.FileFormats.Emf.Emf.Records
- hopsättning Aspose.Imaging
EmfDeleteObject()
Initierar en ny instans avEmfDeleteObject
class.
public EmfDeleteObject()
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 EmfDeleteObject
- namnutrymme Aspose.Imaging.FileFormats.Emf.Emf.Records
- hopsättning Aspose.Imaging