Class EmfCreateBrushIndirect
Името на пространството: Aspose.Imaging.FileFormats.Emf.Emf.Records Асамблея: Aspose.Imaging.dll (25.4.0)
Записът EMR_CREATEBRUSHINDIRECT определя логическа четка за графични операции.
public sealed class EmfCreateBrushIndirect : EmfObjectCreationRecordType
Inheritance
object ← MetaObject ← EmfRecord ← EmfObjectCreationRecordType ← EmfCreateBrushIndirect
наследници
EmfRecord.Type , EmfRecord.Size , object.GetType() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()
Constructors
EmfCreateBrushIndirect(EmfRecord)
Иницијализира нова инстанция на Aspose.Imaging.FileFormats.Emf.EMF.Records. EmfCreateBrushIndirect клас.
public EmfCreateBrushIndirect(EmfRecord source)
Parameters
source
EmfRecord
и източника .
EmfCreateBrushIndirect()
Иницијализира нова инстанция на Aspose.Imaging.FileFormats.Emf.EMF.Records. EmfCreateBrushIndirect клас.
public EmfCreateBrushIndirect()
Examples
Следващият пример показва как да зададете цвета на фона за EMF. Той всъщност поставя правоъгълник на цветовете на фоновете, преди да нарисувате всички други обекти.
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
Получава или задава 32-битов несъгласен интегър, който посочва индекса на логическия обект за четкав таблицата за обекти на EMF (секция 3.1.1.1). Този индекс трябва да се съхранява така, че този обект да може да бъдеИзползвани или модифицирани.
public int IhBrush { get; set; }
стойност на имота
LogBrush
Получава или задава LogBrushEx обект (секция 2.2.12) който посочва стила, цвета иполето BrushStyle в този обект Трябва да бъде BS_SOLID,БС_HATCHED или BS_NULL.
public EmfLogBrushEx LogBrush { get; set; }