1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
|
Public Class FormFontImage
Private scaleF As New SizeF(0.04, 0.05)
Private Sub FormFontImage_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
PictureBox1.SizeMode = PictureBoxSizeMode.AutoSize
PictureBox2.SizeMode = PictureBoxSizeMode.AutoSize
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim img As Bitmap = New Bitmap(My.Resources.Koala, 6000, 4000)
Dim layoutRect As New Rectangle(0, 0, img.Width * scaleF.Width, img.Height * scaleF.Height)
Using g As Graphics = Graphics.FromImage(img)
g.FillRectangle(Brushes.Aquamarine, layoutRect)
Dim drawString As String = "Sample"
Dim dpi As Single = g.DpiY
Dim points As Single = layoutRect.Width / drawString.Length
Dim emSize As Single = (points * dpi) / 72
Using drawFont As New Font("Arial", emSize, FontStyle.Regular, GraphicsUnit.Pixel)
Using drawBrush As New SolidBrush(Color.Red)
Dim x As Single = 0
Dim y As Single = 0
'g.DrawString(drawString, drawFont, drawBrush, x, y)
g.DrawString(drawString, drawFont, drawBrush, layoutRect, StringFormat.GenericTypographic)
End Using
End Using
End Using
PictureBox1.Image = img
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Dim img As Bitmap = New Bitmap(My.Resources.Koala, 1000, 808)
Dim layoutRect As New Rectangle(0, 0, img.Width * scaleF.Width, img.Height * scaleF.Height)
Using g As Graphics = Graphics.FromImage(img)
g.FillRectangle(Brushes.Aquamarine, layoutRect)
Dim drawString As String = "Sample"
Dim dpi As Single = g.DpiY
Dim points As Single = layoutRect.Width / drawString.Length
Dim emSize As Single = (points * dpi) / 72
Using drawFont As New Font("Arial", emSize, FontStyle.Regular, GraphicsUnit.Pixel)
Using drawBrush As New SolidBrush(Color.Red)
Dim x As Single = 0
Dim y As Single = 0
'g.DrawString(drawString, drawFont, drawBrush, x, y)
g.DrawString(drawString, drawFont, drawBrush, layoutRect, StringFormat.GenericTypographic)
End Using
End Using
End Using
PictureBox2.Image = img
End Sub
End Class |
Partager