如何动态旋转图片?

时间:2011-10-20 08:22:17

标签: image rotation c++builder angle

我的prog(* .bmp图片)中有一个资源。当我启动计时器时,我的图像应该旋转,直到我点击“暂停”。我需要一个样本来解释我如何才能做到这一点。

目前我使用此代码:

void rotatewaiticon()
{
Graphics::TBitmap *bmpOriginal = new Graphics::TBitmap();
    //bmpOriginal->LoadFromResourceName(0,"bmpcrug");
    bmpOriginal->LoadFromFile("degrees.bmp");
    FormMain->Image65->Picture->Assign(bmpOriginal);
Graphics::TBitmap *bmpCopy = new Graphics::TBitmap();

    bmpCopy->Width  = bmpOriginal->Height;
    bmpCopy->Height = bmpOriginal->Width;

    int wOr = bmpOriginal->Width, hOr = bmpOriginal->Height;
    for(int x = 0; x < wOr; x++)
    {
      for(int y = 0; y < hOr; y++)
      {
            bmpCopy->Canvas->Pixels[hOr - y][x] = bmpOriginal->Canvas->Pixels[x][y];
      }
    }
/**/FormMain->Image65->Picture->Assign(bmpCopy);
    bmpCopy->SaveToFile("degrees.bmp");

    delete bmpOriginal, bmpCopy;
} 

但我没有看到使用此文件的方法而不将其保存在磁盘上。

1 个答案:

答案 0 :(得分:3)

请参阅此文章:How to rotate a bitmap