VB2010にて、文字を上下鏡反転したいのですが、どなたか教えていただ
VB2010にて、文字を上下鏡反転したいのですが、どなたか教えていただけないでしょうか。
マトリックスでピクチャーボックスの左下を原点としてグラフ描画できましたが、
文字が逆さまになってしまいました。
ピクチャーボックスに、グラフィクスオブジェクトを使い
ビットマップイメージで描画して文字を上下反転しようと試みています。
以下のコードで、
Me.PictureBox1.Image.RotateFlip(RotateFlipType.RotateNoneFlipY)
の部分がエラーとなってしまいます。
どう修正すればよいか教えていただけませんでしょうか。
どうぞよろしくお願いいたします。
Dim myPen As New Pen(Color.Red, 1)
Dim myFont As New Font("MS UI Gothic", 20)
Dim myMatrix As New Matrix
'Dim g As Graphics = Me.PictureBox1.CreateGraphics
Dim Image2 As New Bitmap(Me.PictureBox1.Width, Me.PictureBox1.Height)
Dim pg As Graphics = Graphics.FromImage(Image2)
Dim px, py As Long
px = Me.PictureBox1.Width
py = Me.PictureBox1.Height
myMatrix.Scale(1, -1) '拡大縮小(y軸のみ正負の方向を逆にする)
myMatrix.Translate(0, -py) '平行移動(ピクチャーボックスの高さ分,下へ平行移動)
'g.Transform = myMatrix
pg.Transform = myMatrix
'g.DrawLine(myPen, 0, 0, 200, 200)
pg.DrawLine(myPen, 0, 0, 200, 200)
'g.DrawString("text", myFont, Brushes.Red, 100, 100)
pg.DrawString("text", myFont, Brushes.Red, 100, 100)
'"text"を上下反転する
'Me.PictureBox1.Image = Image.FromFile("C:\☆test.bmp")
Me.PictureBox1.Image.RotateFlip(RotateFlipType.RotateNoneFlipY)
Me.PictureBox1.Refresh()
お礼
回答ありがとうございます。 やっとわかりました!ピクチャーボックスのイメージプロパティを消すと全部消えてしまうと言うことなんですね。 >Graphics描画→グラフ情報だけ >PictureBox→カーソル >とでもしてPictureBoxを動かせばできるかと やってみました。 ピクチャーボックスが透明にならなかったので、 フォームを透明にしてなんとか対応してみます。