VB.Net by API/System.Drawing.Drawing2D/SmoothingMode

Материал из VB Эксперт
Перейти к: навигация, поиск

SmoothingMode.HighQuality

<source lang="vbnet">

Imports System Imports System.Windows.Forms Imports System.Drawing Imports System.Drawing.Drawing2D

Public Class MainClass

 Shared Sub Main()
    Dim form1 As Form1 = new Form1
    Application.Run(form1)
 End Sub
 

End Class Public Class Form1

 Inherits System.Windows.Forms.Form
 Public Sub New()
   MyBase.New()
   Me.AutoScaleBaseSize = New System.Drawing.Size(5, 13)
   Me.ClientSize = New System.Drawing.Size(504, 629)
   Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen
   Me.Text = "Form1"
 End Sub
 Protected Overrides Sub OnPaint(ByVal e As PaintEventArgs)
   Dim R1 As New Rectangle(10, 10, 40, 40)
   e.Graphics.SmoothingMode = SmoothingMode.HighQuality
   e.Graphics.ResetTransform()
   e.Graphics.TranslateTransform(200.0F, 50.0F)
   e.Graphics.DrawArc(Pens.DarkBlue, R1, 40, 160)
 End Sub

End Class


 </source>


SmoothingMode.HighSpeed

<source lang="vbnet">

Imports System.Drawing Imports System.Drawing.Drawing2D Imports System.Windows.Forms public class CompositingQualityHighSpeed

  public Shared Sub Main
       Application.Run(New Form1)
  End Sub

End class public class Form1

 Inherits System.Windows.Forms.Form
 Protected Overrides Sub OnPaint(ByVal e As PaintEventArgs)
       Dim g As Graphics = Me.CreateGraphics()
       g.Clear(Me.BackColor)
       Dim redPen As New Pen(Color.Red, 20)
       Dim bluePen As New Pen(Color.Blue, 10)
       Dim gContainer1 As GraphicsContainer = g.BeginContainer()
       g.SmoothingMode = SmoothingMode.AntiAlias
       g.rupositingQuality = CompositingQuality.GammaCorrected
       g.DrawEllipse(redPen, 10, 10, 100, 50)
       g.DrawRectangle(bluePen, 210, 0, 100, 100)
       Dim gContainer2 As GraphicsContainer = g.BeginContainer()
       g.SmoothingMode = SmoothingMode.HighSpeed
       g.rupositingQuality = CompositingQuality.HighSpeed
       g.DrawEllipse(redPen, 10, 150, 100, 50)
       g.DrawRectangle(bluePen, 210, 150, 100, 100)
       g.EndContainer(gContainer2)
       g.EndContainer(gContainer1)
       redPen.Dispose()
       bluePen.Dispose()
       g.Dispose()
 End Sub
 Public Sub New()
  
   MyBase.New()
   Me.AutoScaleBaseSize = New System.Drawing.Size(5, 13)
   Me.ClientSize = New System.Drawing.Size(292, 273)
   Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen
 End Sub

End Class


 </source>