Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Categories

need help, crop and rotate an image, urgent

Hi. I'm making a paint program in WM5.0 using VB.NET 2005. i get stuck in cropping and rotating an image. I've search a lot, but the answers is for Visual Basic Windows Application. Didn't work when i paste the codes into Visual Basic Smart Device Application. Someone please help me... I'm running out of time... Thanks.....

Dim bm_in As New Bitmap(m_Bitmap)
Dim wid As Single = bm_in.Width
Dim hgt As Single = bm_in.Height
Dim corners As Point() = { _
New Point(0, 0), _
New Point(wid, 0), _
New Point(0, hgt), _
New Point(wid, hgt)}
Dim cx As Single = wid / 2
Dim cy As Single = hgt / 2
Dim i As Long
For i = 0 To 3
corners(i).X -= cx
corners(i).Y -= cy
Next i

Dim theta As Single = Single.Parse(TxtAngle.Text) * PI / 180.0
Dim sin_theta As Single = Sin(theta)
Dim cos_theta As Single = Cos(theta)
Dim X As Single
Dim Y As Single
For i = 0 To 3
X = corners(i).X
Y = corners(i).Y
corners(i).X = X * cos_theta + Y * sin_theta
corners(i).Y = -X * sin_theta + Y * cos_theta
Next i

Dim xmin As Single = corners(0).X
Dim ymin As Single = corners(0).Y
For i = 1 To 3
If xmin > corners(i).X Then xmin = corners(i).X
If ymin > corners(i).Y Then ymin = corners(i).Y
Next i
For i = 0 To 3
corners(i).X -= xmin
corners(i).Y -= ymin
Next i

Dim bm_out As New Bitmap(CInt(-2 * xmin), CInt(-2 * ymin))
Dim gr_out As Graphics = Graphics.FromImage(bm_out)
ReDim Preserve corners(2)
--> gr_out.DrawImage(bm_in, corners)
picCanvas.Image = bm_out

Sign In or Register to comment.