本文整理汇总了VB.NET中System.Drawing.Imaging.Metafile类的典型用法代码示例。如果您正苦于以下问题:VB.NET Metafile类的具体用法?VB.NET Metafile怎么用?VB.NET Metafile使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Metafile类的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的VB.NET代码示例。
示例1: Form1
' 导入命名空间
Imports System.Drawing
Imports System.Drawing.Imaging
Imports System.Windows.Forms
' for Marshal.Copy
Imports System.Runtime.InteropServices
Public Class Form1
Inherits Form
Private metafile1 As Metafile
Private metafileDelegate As Graphics.EnumerateMetafileProc
Private destPoint As Point
Public Sub New()
metafile1 = New Metafile("C:\test.wmf")
metafileDelegate = New Graphics.EnumerateMetafileProc(AddressOf MetafileCallback)
destPoint = New Point(20, 10)
End Sub
Protected Overrides Sub OnPaint(ByVal e As PaintEventArgs)
e.Graphics.EnumerateMetafile(metafile1, destPoint, metafileDelegate)
End Sub
Private Function MetafileCallback(ByVal recordType As _
EmfPlusRecordType, ByVal flags As Integer, ByVal dataSize As Integer, _
ByVal data As IntPtr, ByVal callbackData As PlayRecordCallback) As Boolean
Dim dataArray As Byte() = Nothing
If data <> IntPtr.Zero Then
' Copy the unmanaged record to a managed byte buffer
' that can be used by PlayRecord.
dataArray = New Byte(dataSize) {}
Marshal.Copy(data, dataArray, 0, dataSize)
End If
metafile1.PlayRecord(recordType, flags, dataSize, dataArray)
Return True
End Function
Shared Sub Main()
Application.Run(New Form1())
End Sub
End Class
示例2: New Metafile
' 导入命名空间
Imports System.Drawing.Imaging
Imports System.Drawing
Imports System.Drawing.Drawing2D
Imports System.Windows.Forms
Imports System.Math
public class WMFFileCreate
public Shared Sub Main
Application.Run(New Form1)
End Sub
End class
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Const WID As Integer = 200
Dim file_name As String = "test.wmf"
Dim me_gr As Graphics = Me.CreateGraphics
Dim me_hdc As IntPtr = me_gr.GetHdc
Dim bounds As New RectangleF(0, 0, WID, WID)
Dim mf As New Metafile(file_name, me_hdc, bounds, MetafileFrameUnit.Pixel)
me_gr.ReleaseHdc(me_hdc)
Dim gr As Graphics = Graphics.FromImage(mf)
gr.PageUnit = GraphicsUnit.Pixel
gr.Clear(Color.White)
gr.DrawEllipse(Pens.Red, bounds)
gr.DrawLine(Pens.Blue, 0, 0, WID, WID)
gr.DrawLine(Pens.Blue, WID, 0, 0, WID)
gr.Dispose()
mf.Dispose()
mf = New Metafile(file_name)
Dim bm As New Bitmap(WID, WID)
gr = Graphics.FromImage(bm)
Dim dest_bounds As New RectangleF(0, 0, WID, WID)
Dim source_bounds As New RectangleF(0, 0, WID + 1, WID + 1)
gr.DrawImage(mf, bounds, source_bounds, GraphicsUnit.Pixel)
picOrig.SizeMode = PictureBoxSizeMode.AutoSize
picOrig.Image = bm
gr.Dispose()
mf.Dispose()
mf = New Metafile(file_name)
picSmall.SetBounds(picOrig.Right + 10, picOrig.Top,picOrig.Width \ 2, picOrig.Height \ 2)
bm = New Bitmap(picSmall.ClientSize.Width,picSmall.ClientSize.Height)
gr = Graphics.FromImage(bm)
gr.ScaleTransform(0.5, 0.5)
gr.DrawImage(mf, bounds, source_bounds, GraphicsUnit.Pixel)
picSmall.Image = bm
gr.Dispose()
mf.Dispose()
End Sub
End Class
<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _
Partial Public Class Form1
Inherits System.Windows.Forms.Form
'Form overrides dispose to clean up the component list.
<System.Diagnostics.DebuggerNonUserCode()> _
Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)
If disposing AndAlso components IsNot Nothing Then
components.Dispose()
End If
MyBase.Dispose(disposing)
End Sub
'Required by the Windows Form Designer
Private components As System.ComponentModel.IContainer
'NOTE: The following procedure is required by the Windows Form Designer
'It can be modified using the Windows Form Designer.
'Do not modify it using the code editor.
<System.Diagnostics.DebuggerStepThrough()> _
Private Sub InitializeComponent()
Me.picSmall = New System.Windows.Forms.PictureBox
Me.picOrig = New System.Windows.Forms.PictureBox
CType(Me.picSmall, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.picOrig, System.ComponentModel.ISupportInitialize).BeginInit()
Me.SuspendLayout()
'
'picSmall
'
Me.picSmall.Location = New System.Drawing.Point(64, 8)
Me.picSmall.Name = "picSmall"
Me.picSmall.Size = New System.Drawing.Size(32, 24)
Me.picSmall.TabIndex = 3
Me.picSmall.TabStop = False
'
'picOrig
'
Me.picOrig.Location = New System.Drawing.Point(8, 8)
Me.picOrig.Name = "picOrig"
Me.picOrig.Size = New System.Drawing.Size(48, 56)
Me.picOrig.TabIndex = 2
Me.picOrig.TabStop = False
'
'Form1
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.ClientSize = New System.Drawing.Size(326, 215)
Me.Controls.Add(Me.picSmall)
Me.Controls.Add(Me.picOrig)
Me.Name = "Form1"
Me.Text = "MakeMetafile"
CType(Me.picSmall, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.picOrig, System.ComponentModel.ISupportInitialize).EndInit()
Me.ResumeLayout(False)
End Sub
Friend WithEvents picSmall As System.Windows.Forms.PictureBox
Friend WithEvents picOrig As System.Windows.Forms.PictureBox
End Class