网站导航免费论文 原创论文 论文搜索 原创论文 网学软件 学术大家 资料中心 会员中心 问题解答 原创论文 论文素材 设计下载 最新论文 下载排行 论文上传 在线投稿 联系我们
返回网学首页
网学联系
最新论文 推荐专题 热门论文 素材专题
当前位置: 网学 > 编程文档 > DELPHI > 正文
Delphi实现将位图旋转90度
来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 12/10/12
下载{$ArticleTitle}原创论文样式

写了一个将位图TBitmap顺时针旋转90度的小函数,原理很简单,就是将新图片的X,Y坐标互换,函数可以直接加在其他项目调用。

//by sgxcn  www.programbbs.com
function RotateBmp90(SrcBmp: TBitmap): TBitmap;
var
  x, y: Integer;
  DstBmp: TBitmap;
begin
  DstBmp := TBitmap.create;
  DstBmp.PixelFormat := pf24bit;
  DstBmp.Height := SrcBmp.Width;
  DstBmp.Width := SrcBmp.Height;
  for x := 0 to DstBmp.Width do
    for y := 0 to DstBmp.Height do
      DstBmp.Canvas.Pixels[x, y] := SrcBmp.Canvas.Pixels[y, SrcBmp.Height - x];
  Result := DstBmp;
end;

调用方法:
newBmp := RotateBmp90(myBmp);

由于时间关系,没有用Scanline方式,相信Scanline会提高不少执行效率,感兴趣的朋友可以自行研究。

网学推荐

免费论文

原创论文

浏览:
设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
湘ICP备09003080号