Class EmfCreateBrushIndirect
Nom dels espais: Aspose.Imaging.FileFormats.Emf.Emf.Records Assemblea: Aspose.Imaging.dll (25.4.0)
El registre EMR_CREATEBRUSHINDIRECT defineix un brush lògic per a les operacions gràfiques.
public sealed class EmfCreateBrushIndirect : EmfObjectCreationRecordType
Inheritance
object ← MetaObject ← EmfRecord ← EmfObjectCreationRecordType ← EmfCreateBrushIndirect
Membres heretats
EmfRecord.Type , EmfRecord.Size , object.GetType() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()
Constructors
EmfCreateBrushIndirect(EmfRecord)
Inicialitza una nova instància de la classe Aspose.Imaging.FileFormats.Emf.EMF.Records. EmfCreateBrushIndirect.
public EmfCreateBrushIndirect(EmfRecord source)
Parameters
source
EmfRecord
La font.
EmfCreateBrushIndirect()
Inicialitza una nova instància de la classe Aspose.Imaging.FileFormats.Emf.EMF.Records. EmfCreateBrushIndirect.
public EmfCreateBrushIndirect()
Examples
L’exemple següent mostra com configurar el color de fons per a EMF. De fet, posa un rectangle del color del fons abans de dibuixar tots els altres objectes.
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
IhBrush
Obtenir o configurar un integrador no signat de 32 bits que especifica l’índex de l’objecte de brús lògicen la taula d’objectes EMF (secció 3.1.1.1). aquest índex ha de ser guardat perquè aquest objecte pugui serreutilitzats o modificats.
public int IhBrush { get; set; }
Valor de la propietat
LogBrush
Objecte LogBrushEx (secció 2.2.12) que especifica l’estil, el color iEl camp BrushStyle en aquest objecte ha de ser BS_SOLID,BS_HATCHED o BS - NULL.
public EmfLogBrushEx LogBrush { get; set; }