Graphics.AddMetafileComment(Byte[]) Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Geçerli Metafilebir açıklama ekler.
public:
void AddMetafileComment(cli::array <System::Byte> ^ data);
public void AddMetafileComment (byte[] data);
member this.AddMetafileComment : byte[] -> unit
Public Sub AddMetafileComment (data As Byte())
Parametreler
- data
- Byte[]
Açıklamayı içeren bayt dizisi.
Örnekler
Aşağıdaki kod örneği, Windows Forms ile kullanılmak üzere tasarlanmıştır ve Paint olay işleyicisinin bir parametresi olan PaintEventArgse
ve örneğin FormthisForm
gerektirir. Kod aşağıdaki eylemleri gerçekleştirir:
Meta dosyasını oluşturmak için geçici bir Graphics oluşturur ve cihaz bağlamı için
hdc
bir tanıtıcı alır.hdc
kullanarak yeni bir meta dosyası oluşturur.Metafilemeta dosyasının görüntülenmesi için bir Graphics oluşturur.
Meta dosyaya bir dikdörtgen çizer.
Meta dosyaya açıklama ekler.
Meta dosyasını kapatan meta dosyası için Graphics atılır.
Meta dosyasını atılır.
Geçici
hdc
bırakır.Geçici Graphicsatılır.
Daha önce oluşturulan dosyadan ikinci bir meta dosyası oluşturur.
Meta dosyasını ekrana çizer.
Meta dosyasını atılır.
private:
[SecurityPermission(SecurityAction::Demand, Flags = SecurityPermissionFlag::UnmanagedCode)]
void AddMetafileCommentBytes( PaintEventArgs^ e )
{
// Create temporary Graphics object for metafile
// creation and get handle to its device context.
Graphics^ newGraphics = this->CreateGraphics();
IntPtr hdc = newGraphics->GetHdc();
// Create metafile object to record.
Metafile^ metaFile1 = gcnew Metafile( "SampMeta.emf",hdc );
// Create graphics object to record metaFile.
Graphics^ metaGraphics = Graphics::FromImage( metaFile1 );
// Draw rectangle in metaFile.
metaGraphics->DrawRectangle( gcnew Pen( Color::Black,5.0f ), 0, 0, 100, 100 );
// Create comment and add to metaFile.
array<Byte>^metaComment = {(Byte)'T',(Byte)'e',(Byte)'s',(Byte)'t'};
metaGraphics->AddMetafileComment( metaComment );
// Dispose of graphics object.
delete metaGraphics;
// Dispose of metafile.
delete metaFile1;
// Release handle to temporary device context.
newGraphics->ReleaseHdc( hdc );
// Dispose of scratch graphics object.
delete newGraphics;
// Create existing metafile object to draw.
Metafile^ metaFile2 = gcnew Metafile( "SampMeta.emf" );
// Draw metaFile to screen.
e->Graphics->DrawImage( metaFile2, Point(0,0) );
// Dispose of metafile.
delete metaFile2;
}
private void AddMetafileCommentBytes(PaintEventArgs e)
{
// Create temporary Graphics object for metafile
// creation and get handle to its device context.
Graphics newGraphics = this.CreateGraphics();
IntPtr hdc = newGraphics.GetHdc();
// Create metafile object to record.
Metafile metaFile1 = new Metafile("SampMeta.emf", hdc);
// Create graphics object to record metaFile.
Graphics metaGraphics = Graphics.FromImage(metaFile1);
// Draw rectangle in metaFile.
metaGraphics.DrawRectangle(new Pen(Color.Black, 5), 0, 0, 100, 100);
// Create comment and add to metaFile.
byte[] metaComment = {(byte)'T', (byte)'e', (byte)'s', (byte)'t'};
metaGraphics.AddMetafileComment(metaComment);
// Dispose of graphics object.
metaGraphics.Dispose();
// Dispose of metafile.
metaFile1.Dispose();
// Release handle to temporary device context.
newGraphics.ReleaseHdc(hdc);
// Dispose of scratch graphics object.
newGraphics.Dispose();
// Create existing metafile object to draw.
Metafile metaFile2 = new Metafile("SampMeta.emf");
// Draw metaFile to screen.
e.Graphics.DrawImage(metaFile2, new Point(0, 0));
// Dispose of metafile.
metaFile2.Dispose();
}
Private Sub AddMetafileCommentBytes(ByVal e As PaintEventArgs)
' Create temporary graphics object for metafile
' creation and get handle to its device context.
Dim newGraphics As Graphics = Me.CreateGraphics()
Dim hdc As IntPtr = newGraphics.GetHdc()
' Create metafile object to record.
Dim metaFile1 As New Metafile("SampMeta.emf", hdc)
' Create graphics object to record metaFile.
Dim metaGraphics As Graphics = Graphics.FromImage(metaFile1)
' Draw rectangle in metaFile.
metaGraphics.DrawRectangle(New Pen(Color.Black, 5), 0, 0, 100, 100)
' Create comment and add to metaFile.
Dim metaComment As Byte() = {CByte("T"), CByte("e"), CByte("s"), _
CByte("t")}
metaGraphics.AddMetafileComment(metaComment)
' Dispose of graphics object.
metaGraphics.Dispose()
' Dispose of metafile.
metaFile1.Dispose()
' Release handle to scratch device context.
newGraphics.ReleaseHdc(hdc)
' Dispose of scratch graphics object.
newGraphics.Dispose()
' Create existing metafile object to draw.
Dim metaFile2 As New Metafile("SampMeta.emf")
' Draw metaFile to screen.
e.Graphics.DrawImage(metaFile2, New Point(0, 0))
' Dispose of metafile.
metaFile2.Dispose()
End Sub
Açıklamalar
Bu yöntem yalnızca bu Graphics bir Metafileile ilişkilendirildiğinde geçerlidir.