EmfCreateBrushIndirect
Contenuti
[
Nascondere
]EmfCreateBrushIndirect(EmfRecord)
Inizializza una nuova istanza diEmfCreateBrushIndirect
classe.
public EmfCreateBrushIndirect(EmfRecord source)
Parametro | Tipo | Descrizione |
---|---|---|
source | EmfRecord | La fonte. |
Guarda anche
- class EmfRecord
- class EmfCreateBrushIndirect
- spazio dei nomi Aspose.Imaging.FileFormats.Emf.Emf.Records
- assemblea Aspose.Imaging
EmfCreateBrushIndirect()
Inizializza una nuova istanza diEmfCreateBrushIndirect
classe.
public EmfCreateBrushIndirect()
Esempi
L’esempio seguente mostra come impostare il colore di sfondo per EMF. In realtà mette un rettangolo del colore di sfondo prima di disegnare tutti gli altri oggetti.
[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>
/// Metodo di supporto per cambiare lo sfondo EMF.
/// </summary>
public static void AddBackgroundRectangleEmf(Aspose.Imaging.FileFormats.Emf.EmfImage image, Aspose.Imaging.Color color)
{
image.CacheData();
if (image.Records.Count < 1)
{
return;
}
//Imposta rettangolo
Aspose.Imaging.FileFormats.Emf.Emf.Records.EmfRectangle rectangle = new Aspose.Imaging.FileFormats.Emf.Emf.Records.EmfRectangle();
rectangle.Box = image.Header.EmfHeader.Bounds;
//Imposta pennello
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();
// Gli indici degli oggetti iniziano da 1; zero è riservato per i riferimenti al metafile stesso, vedi
// https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-emf/e4fa4e63-9096-4cdc-b776-85e2a1e4e1f4
brush.IhBrush = 1;
//Seleziona pennello
Aspose.Imaging.FileFormats.Emf.Emf.Records.EmfSelectObject selectObject = new Aspose.Imaging.FileFormats.Emf.Emf.Records.EmfSelectObject();
selectObject.ObjectHandle = 1;
//Rimuovi il pennello
Aspose.Imaging.FileFormats.Emf.Emf.Records.EmfDeleteObject deleteObject = new Aspose.Imaging.FileFormats.Emf.Emf.Records.EmfDeleteObject();
deleteObject.ObjectHandle = 1;
//Aggiungi record
image.Records.Insert(1, brush);
image.Records.Insert(2, selectObject);
image.Records.Insert(3, rectangle);
image.Records.Insert(4, deleteObject);
}
Guarda anche
- class EmfCreateBrushIndirect
- spazio dei nomi Aspose.Imaging.FileFormats.Emf.Emf.Records
- assemblea Aspose.Imaging