玄関へお回り下さい。
変形フォントの表示及び指定の角度でフォントを表示 (4)            (SNo.108)
1.横倍角文字表示
2.縦倍角文字を表示
3.指定の角度でフォントを表示
4.アンチエイリアス処理をしたフォントを表示
使用コントロール Form1 PictureBox1
その他条件 WindowsXP  Visual Basic .NET 2003 ・ VB2005
 
★ 変形フォントの表示及び指定の角度でフォントを表示

Private Sub PictureBox1_Paint(ByVal sender As Object, _
         
ByVal e As System.Windows.Forms.PaintEventArgs) Handles PictureBox1.Paint
   
Dim g As Graphics
   
With PictureBox1
      .Image = 
New Bitmap(.Width, .Height)
      g = Graphics.FromImage(.Image)
   
End With
   
Dim f As New Font("MS ゴシック", 14)
   g.PageUnit = GraphicsUnit.Millimeter   
'表示位置の単位を mm に設定
   'テキストレンダリングの品質を指定
   '(アンチエイリアス処理されたグリフ ビットマップを使用)
   g.TextRenderingHint = System.Drawing.Text.TextRenderingHint.AntiAlias
   '----- アンチエイリアス処理した通常のサイズの文字を表示 --------
   g.TranslateTransform(3, 5)             
'表示位置の設定
   g.ScaleTransform(1.0, 1.0)             
'横・縦の表示比率を設定
   g.DrawString("通常のサイズの文字", f, Brushes.Black, 0, 0)
   g.ResetTransform()                     
'単位行列にリセット
   '------------------ 横倍角文字を表示 ----------------------
   g.TranslateTransform(3, 20)             
'表示位置の設定
   g.ScaleTransform(2.0, 1.0)             
'横・縦の表示比率を設定
   g.DrawString("横倍角文字", f, Brushes.Red, 0, 0)
   g.ResetTransform()                     
'単位行列にリセット
   '------------------- 縦倍角文字を表示 ---------------------
   g.TranslateTransform(3, 35)             
'表示位置の設定
   g.ScaleTransform(1.0, 2.0)             
'横・縦の表示比率を設定
   g.DrawString("縦倍角文字", f, Brushes.Green, 0, 0)
   g.ResetTransform()                     
'単位行列にリセット
   '---------- 指定の角度でフォントを表示 -------------------------
   
For i As Integer = 0 To 360 Step 30
      g.TranslateTransform(85, 27)       
'表示位置の設定
      g.ScaleTransform(1.0, 1.0)         
'横・縦の表示比率を設定
      g.RotateTransform(i)               
'表示角度を指定
      g.DrawString("←回転表示", f, Brushes.Blue, 0, 0)
      g.ResetTransform()                 
'単位行列にリセット
   
Next i
   '-------------------------------------------
   f.Dispose()
   g.Dispose()
End Sub
 
 実行結果
   


2006/03/19


VBレスキュー(花ちゃん)
VB.NET2003  VB2005