Class EmfSelectObject
Pôvodný názov: Aspose.Imaging.FileFormats.Emf.Emf.Records Zhromaždenie: Aspose.Imaging.dll (25.4.0)
Záznam EMR_SELECTOBJECT pridáva grafický objekt do aktuálneho metafyzického prehrávačaobjekt je uvedený buď jeho indexom v tabuľke objektov EMF (oddiel 3.1.1.1) alebo jehohodnota zo zoznamu StockObject (oddiel 2.1.31).
public sealed class EmfSelectObject : EmfRecord
Inheritance
object ← MetaObject ← EmfRecord ← EmfSelectObject
Z dedičných členov
EmfRecord.Type , EmfRecord.Size , object.GetType() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()
Constructors
EmfSelectObject(EmfRecord)
Initalizuje novú inštanciu triedy Aspose.Imaging.FileFormats.Emf.EMF.Records. EmfSelectObject.
public EmfSelectObject(EmfRecord record)
Parameters
record
EmfRecord
To je rekord.
EmfSelectObject()
Initalizuje novú inštanciu triedy Aspose.Imaging.FileFormats.Emf.EMF.Records. EmfSelectObject.
public EmfSelectObject()
Examples
Nasledujúci príklad ukazuje, ako nastaviť farbu pozadia pre EMF. V skutočnosti umiestňuje rektál farby pozadie pred kreslením všetkých ostatných objektov.
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
ObjectHandle
Získať alebo nastaviť 32-bitový nesignovaný integer, ktorý určuje buď index grafického objektuv tabuľke EMF Object alebo indexe akčného objektu zo zoznamu Aspose.Imaging.FileFormats.Emf.Emb.Consts.EMfStockObject.
public int ObjectHandle { get; set; }