Class EmfCreateBrushIndirect
Le nom : Aspose.Imaging.FileFormats.Emf.Emf.Records Assemblée: Aspose.Imaging.dll (25.4.0)
L’enregistrement EMR_CREATEBRUSHINDIRECT définit un brush logique pour les opérations graphiques.
public sealed class EmfCreateBrushIndirect : EmfObjectCreationRecordType
Inheritance
object ← MetaObject ← EmfRecord ← EmfObjectCreationRecordType ← EmfCreateBrushIndirect
I membri ereditari
EmfRecord.Type , EmfRecord.Size , object.GetType() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()
Constructors
EmfCreateBrushIndirect(EmfRecord)
Initialisez une nouvelle instance de la classe Aspose.Imaging.FileFormats.Emf.EMF.Records.EnfCreateBrushIndirect.
public EmfCreateBrushIndirect(EmfRecord source)
Parameters
source
EmfRecord
La fonte .
EmfCreateBrushIndirect()
Initialisez une nouvelle instance de la classe Aspose.Imaging.FileFormats.Emf.EMF.Records.EnfCreateBrushIndirect.
public EmfCreateBrushIndirect()
Examples
L’exemple suivant montre comment définir la couleur d’arrière-plan pour EMF. Il met en fait un rectangle du coloris de fond avant de dessiner tous les autres objets.
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
Obtenez ou définissez un intégrateur non signé de 32 bits spécifiant l’indice de l’objet de brossage logiquedans la table des objets EMF (section 3.1.1.1). cet indice doit être sauvé afin que cet objet puisse êtreréutilisé ou modifié.
public int IhBrush { get; set; }
Valore di proprietà
LogBrush
Obtenez ou définissez un objet LogBrushEx (section 2.2.12) qui spécifie le style, la couleur etle champ BrushStyle dans cet objet doit être BS_SOLID,Il s’agit de BS_HATCHED.
public EmfLogBrushEx LogBrush { get; set; }