Class EmfCreateBrushIndirect
nazivni prostor: Aspose.Imaging.FileFormats.Emf.Emf.Records Sastav: Aspose.Imaging.dll (25.4.0)
EMR_CREATEBRUSHINDIRECT zapis definira logički brush za grafičke operacije.
public sealed class EmfCreateBrushIndirect : EmfObjectCreationRecordType
Inheritance
object ← MetaObject ← EmfRecord ← EmfObjectCreationRecordType ← EmfCreateBrushIndirect
naslijeđeni članovi
EmfRecord.Type , EmfRecord.Size , object.GetType() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()
Constructors
EmfCreateBrushIndirect(EmfRecord)
Inicijalizira novu primjenu Aspose.Imaging.FileFormats.Emf.EMF.Records. EmfCreateBrushIndirect razreda.
public EmfCreateBrushIndirect(EmfRecord source)
Parameters
source
EmfRecord
Izvor je.
EmfCreateBrushIndirect()
Inicijalizira novu primjenu Aspose.Imaging.FileFormats.Emf.EMF.Records. EmfCreateBrushIndirect razreda.
public EmfCreateBrushIndirect()
Examples
Sljedeći primjer pokazuje kako postaviti boju pozadine za EMF. To zapravo stavlja pravokuglu boje pozadina prije crtanja svih ostalih objekata.
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
Dobivaju ili postavljaju 32-bitni nesignirani integrator koji određuje indeks logičkog objekta za brisanjeu tablici objekata EMF-a (odjeljak 3.1.1.1).Ovaj indeks treba sačuvati kako bi se ovaj objekt mogaoponovno korištena ili izmijenjena.
public int IhBrush { get; set; }
Vrijednost nekretnina
LogBrush
Dobiva ili postavlja LogBrushEx objekt (odjeljak 2.2.12) koji određuje stil, boju ipolje BrushStyle u ovom objektu mora biti BS_SOLID,BS_HATCHED ili BS - NULL.
public EmfLogBrushEx LogBrush { get; set; }