Class EmfCreateBrushIndirect
Der Name: Aspose.Imaging.FileFormats.Emf.Emf.Records Versammlung: Aspose.Imaging.dll (25.4.0)
Die EMR_CREATEBRUSHINDIRECT-Registrierung definiert eine logische Brush für grafische Operationen.
public sealed class EmfCreateBrushIndirect : EmfObjectCreationRecordType
Inheritance
object ← MetaObject ← EmfRecord ← EmfObjectCreationRecordType ← EmfCreateBrushIndirect
Vererbte Mitglieder
EmfRecord.Type , EmfRecord.Size , object.GetType() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()
Constructors
EmfCreateBrushIndirect(EmfRecord)
Initialisiert eine neue Instanz der Aspose.Imaging.FileFormats.Emf.Emf.Records.EmfCreateBrushIndirect Klasse.
public EmfCreateBrushIndirect(EmfRecord source)
Parameters
source
EmfRecord
Die Quelle.
EmfCreateBrushIndirect()
Initialisiert eine neue Instanz der Aspose.Imaging.FileFormats.Emf.Emf.Records.EmfCreateBrushIndirect Klasse.
public EmfCreateBrushIndirect()
Examples
Das folgende Beispiel zeigt, wie die Hintergrundfarbe für EMF festgelegt wird. Es legt vor dem Zeichnen aller anderen Objekte tatsächlich einen Rechtangel der Hintergrundfarbe.
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
Erhalten oder Setzen Sie einen 32-Bit-Unschriebenen, der den Index des logischen Brushobjekts angibtin der EMF-Objekttabelle (Abschnitt 3.1.1.1). Dieser Index muss gespeichert werden, damit dieses ObjektWiederverwendet oder modifiziert.
public int IhBrush { get; set; }
Eigentumswert
LogBrush
Erhält oder setzt ein LogBrushEx-Objekt (Abschnitt 2.2.12) mit dem der Stil, die Farbe undDas BrushStyle-Feld in diesem Objekt muss BS_SOLID sein,BS_HATCHED oder BS_NULL.
public EmfLogBrushEx LogBrush { get; set; }