Class EmfRectangle
İsim alanı : Aspose.Imaging.FileFormats.Emf.Emf.Records Toplantı: Aspose.Imaging.dll (25.4.0)
EMR_RECTANGLE kayıt bir düz açı çekiyor. düz açı mevcut kalem kullanılarak açıklanırve şimdiki fırçayı kullanarak doldurulur.
public sealed class EmfRectangle : EmfDrawingRecordType
Inheritance
object ← MetaObject ← EmfRecord ← EmfDrawingRecordType ← EmfRectangle
mirasçı üyeleri
EmfRecord.Type , EmfRecord.Size , object.GetType() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()
Remarks
Mevcut pozisyon ne kullanılır ne de Rectangle tarafından güncellenir.Bir PS_NULL kalem kullanılırsa, düz açı boyutları 1 piksel daha az yükseklik ve 1 piksel daha azgenişliğe kadar.
Constructors
EmfRectangle(EmfRecord)
Aspose.Imaging.FileFormats.Emf.Emf.Records.EmfRectangle sınıfının yeni bir örneğini başlatır.
public EmfRectangle(EmfRecord source)
Parameters
source
EmfRecord
Kaynak için .
EmfRectangle()
Aspose.Imaging.FileFormats.Emf.Emf.Records.EmfRectangle sınıfının yeni bir örneğini başlatır.
public EmfRectangle()
Examples
Aşağıdaki örnek EMF için arka plan rengi nasıl ayarlandığını gösterir. aslında arka plan rengi tüm diğer nesneleri çizmeden önce bir düz açı koyar.
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
Box
[MS-WMF] bölüm 2.2.2.19’da belirtilen 128 bit WMF RectL nesnesini alır veya ayarlar;Çekmek için dahil-inclusive rektangle belirlenir.
public Rectangle Box { get; set; }