BMPファイルの画像を回転して保存する方法
- 題名: BMPファイルの画像を回転して保存する方法
- 著者: C_ten
- 日時: 2004/03/15 16:52:47
- ID: 3062
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[1]: BMPファイルの画像を回転して保存する方法
- 著者: りょう
- 日時: 2004/03/15 18:49:24
- ID: 3065
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[2]: BMPファイルの画像を回転して保存する方法
- 著者: りょう
- 日時: 2004/03/15 21:41:31
- ID: 3069
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[1]: BMPファイルの画像を回転して保存する方法
- 著者: 管理人
- URL: http://dobon.net
- 日時: 2004/03/16 4:15:52
- ID: 3071
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[2]: BMPファイルの画像を回転して保存する方法
- 著者: C_ten
- 日時: 2004/03/16 9:42:00
- ID: 3074
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[3]: BMPファイルの画像を回転して保存する方法
- 著者: C_ten
- 日時: 2004/03/17 15:57:05
- ID: 3113
- この記事の返信元:
- この記事への返信:
- ツリーを表示
分類:[.NET]
bmpファイルの画像を、
任意の点を中心に、任意の角度回転し、
元のbmpファイルの大きさで,
bmpファイルとして保存したいのですが,
どのようにすればよいでしょうか。
ポイントとして、
image、bitmapクラスの使用方法と
回転について、
があると思いますが、どうもよくわかりません。
関連の疑問点で、
・ピクチャーボックスに表示する必要があるか。
・各点座標計算をする必要があるのか。
(photshopなどでは任意角度の場合時間かかっているよう)
・角度が90度、180などの場合は、速い方法があるのでしょうか。
(ビットマップオブジェクトのRotateFilipメソッドなどの利用で)
http://dobon.net/vb/dotnet/graphics/transform.htmlを参考に
グローバル座標の変換でピクチャーボックスに表示させたものを保存しようとしたがうまくいきません。
'(10,10)を中心に30度回転する
Dim Fname1 As String="D:\test1.bmp"
Dim Fname2 As String="D:\test2.bmp"
Dim g As Graphics = PictureBox1.CreateGraphics()
Dim img As Image = Image.FromFile(Fname1)
g.ResetTransform()
g.TranslateTransform(10, 10)
g.ResetTransform()
g.RotateTransform(30.0F)
g.ResetTransform()
g.TranslateTransform(-10, -10)
g.DrawImage(img, 0, 0)
PictureBox1.Image.Save(Fname2)
g.Dispose()
img.Dispose()
また、http://dobon.net/vb/dotnet/graphics/skewing.htmlを参考に
表示位置を傾けたものを保存しようとしたがこれもうまくいきません。
グラフィックでは初歩的なことかと大変恐縮ですが、
どなたか御教唆頂けますでしょうか。