Re: rotation and flipping the bitmap
In article <54cb8288-6d4b-4f30-ac37-b0f6f2caed63
@s8g2000prg.googlegroups.com>, swethakiran.korada@gmail.com says...
[ ... ]
If you dont mind can you tell me how to do rotation with any angle.
Or if you have any sample code can you send that one.
First the standard utility routine to convert from degrees to radians:
float deg2rad(float angle) {
return angle * 3.1416f / 180.0f;
}
Then, this goes into your OnDraw routine, where you'd normally start out
with a comment saying something about inserting code to draw your native
data or something like that:
// there will be code something like:
// CWhateverDoc* pDoc = GetDocument();
// ASSERT_VALID(pDoc);
// Then you add this:
HDC dc = pDC->GetSafeHdc();
XFORM xform;
float angle = deg2rad(30.0f);
xform.eDx = 0.0f;
xform.eDy = 0.0f;
xform.eM11 = cos(angle);
xform.eM12 = sin(angle);
xform.eM21 = -sin(angle);
xform.eM22 = cos(angle);
SetGraphicsMode(dc, GM_ADVANCED);
SetWorldTransform(dc, &xform);
pDC->TextOut(100, 0, "This is a string");
Of course, if you only wanted to print out text, you could just create a
font with the lfEscapement set to the correct angle -- but this also
rotates other output as well, such as anything you do with BitBlt,
StretchBlt, Rectangle, etc.
--
Later,
Jerry.
The universe is a figment of its own imagination.