用C或者C++对一幅 .bmp的图像读取显示出来并让它旋转90度

pomqopbm 2014-09-27 09:39:59
哪位大神能够指导我一下,怎么编程能够从文件路径下读取一幅.bmp的图片,然后把它旋转90度并输出显示出来,主要是像素点怎么进行坐标变换的,还有就是头文件需要怎么写,本人小白,求指导!!!
...全文
553 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
赵4老师 2014-09-30
  • 打赏
  • 举报
回复
ms-help://MS.VSCC.v90/MS.MSDNQTR.v90.chs/gdicpp/GDIPlus/usingGDIPlus/usingimagesbitmapsandmetafiles/rotatingreflectingandskewingimages.htm Rotating, Reflecting, and Skewing Images -------------------------------------------------------------------------------- You can rotate, reflect, and skew an image by specifying destination points for the upper-left, upper-right, and lower-left corners of the original image. The three destination points determine an affine transformation that maps the original rectangular image to a parallelogram. (The lower-right corner of the original image is mapped to the fourth corner of the parallelogram, which is calculated from the three specified destination points.) For example, suppose the original image is a rectangle with upper-left corner at (0, 0), upper-right corner at (100, 0), and lower-left corner at (0, 50). Now suppose we map those three points to destination points as follows. Original point Destination point Upper-left (0, 0) (200, 20) Upper-right (100, 0) (110, 100) Lower-left (0, 50) (250, 30) The following illustration shows the original image and the image mapped to the parallelogram. The original image has been skewed, reflected, rotated, and translated. The x-axis along the top edge of the original image is mapped to the line that runs through (200, 20) and (110, 100). The y-axis along the left edge of the original image is mapped to the line that runs through (200, 20) and (250, 30). The following example produces the images shown in the preceding illustration. Point destinationPoints[] = { Point(200, 20), // destination for upper-left point of original Point(110, 100), // destination for upper-right point of original Point(250, 30)}; // destination for lower-left point of original Image image(L"Stripes.bmp"); // Draw the image unaltered with its upper-left corner at (0, 0). graphics.DrawImage(&image, 0, 0); // Draw the image mapped to the parallelogram. graphics.DrawImage(&image, destinationPoints, 3); The following illustration shows a similar transformation applied to a photographic image. The following illustration shows a similar transformation applied to a metafile. --------------------------------------------------------------------------------
pomqopbm 2014-09-29
  • 打赏
  • 举报
回复
引用 1 楼 zhao4zhong1 的回复:
GDI+
能不能具体点,就是用c或者c++代码实现像素坐标的变换呢
赵4老师 2014-09-28
  • 打赏
  • 举报
回复
GDI+

3,881

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 其它技术问题
社区管理员
  • 其它技术问题社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧