MIDP1.0实现图片的旋转

转载 2007年10月15日 17:08:00
public static final Image TransformImage (Image srcImage, int transform)
{
 Image result = null;
 int srcW = srcImage.getWidth();
 int srcH = srcImage.getHeight();
 Graphics g = null;
 switch (transform)
 {
  // nothing to do
  case TRANS_NONE:
   return srcImage;
   // X-flip
  case TRANS_MIRROR:
   result = Image.createImage(srcW, srcH);
   g = result.getGraphics();
   for (int i = 0; i < srcW; i++)
   {
    g.setClip(i, 0, 1, srcH);
    g.drawImage(srcImage, i * 2 - srcW + 1, 0, Graphics.TOP
      | Graphics.LEFT);

   }
   break;
  // Y-flip
  case TRANS_MIRROR_ROT180:
   result = Image.createImage(srcW, srcH);
   g = result.getGraphics();
   for (int i = 0; i < srcH; i++)
   {
    g.setClip(0, i, srcW, 1);
    g.drawImage(srcImage, 0, 2 * i - srcH + 1, Graphics.TOP
      | Graphics.LEFT);

   }
   break;
  // rotate 180 degree deasil
  case TRANS_ROT180:
   result = TransformImage(srcImage, TRANS_MIRROR_ROT180);
   result = TransformImage(result, TRANS_MIRROR);
   break;
  // rotate 90 degree deasil
  case TRANS_ROT90:
   result = Image.createImage(srcH, srcW);
   g = result.getGraphics();
   for (int i = 0; i < srcH; i++)
   {
    for (int j = 0; j < srcW; j++)
    {
     g.setClip(i, j, 1, 1);
     g.drawImage(srcImage, i - j, i + j - srcH, Graphics.TOP
       | Graphics.LEFT);
    }

   }
   break;
  // X-flip and then rotate 270 degree deasil
  case TRANS_MIRROR_ROT270:
   result = Image.createImage(srcH, srcW);
   g = result.getGraphics();
   for (int i = 0; i < srcH; i++)
   {
    for (int j = 0; j < srcW; j++)
    {
     g.setClip(i, j, 1, 1);
     g.drawImage(srcImage, i - j, j - i, Graphics.TOP
       | Graphics.LEFT);
    }

   }
   break;
  // X-flip and then rotate 90 degree deasil
  case TRANS_MIRROR_ROT90:
   result = TransformImage(srcImage, TRANS_ROT90);
   result = TransformImage(result, TRANS_MIRROR_ROT180);
   break;
  // Rotate 270 degree deasil
  case TRANS_ROT270:
   result = TransformImage(srcImage, TRANS_MIRROR_ROT270);
   result = TransformImage(result, TRANS_MIRROR_ROT180);
   break;
 }
 return result;
}

C++实现图像的各种旋转操作

说明:Buffer中存放的是要进行旋转的原始图像,m_pImage中存放转换后的图像数据。       nHeight是图像的高度,我测试图像是1024;nWidth是图像的宽度,我测试图像是140...
  • u012372584
  • u012372584
  • 2017年06月23日 16:03
  • 816

c#图片在PictureBox内任意角度旋转问题(360度)

(1) public static Bitmap RotateImage(Image image, float angle) { if (im...
  • qq_16542775
  • qq_16542775
  • 2016年07月27日 17:27
  • 3397

BMP图像旋转----C++实现

如果前面几个实验都做过了的,做这个应该很简单,今天也是看到图像相关的文章,所以也就复习了一遍,以前也就是知道原理,没编过,这次就都完成了吧。。下面我做的是一个BMP图像旋转的实验。(我选的是180,相...
  • keep_moving_cqu
  • keep_moving_cqu
  • 2013年08月12日 03:24
  • 3433

利用CSS3实现图片旋转放大特效

HTML5+CSS3已经出来一段时间了,作为新(cai)手( niao),只能边学习边记录了,下面介绍的如何利用CSS3特性制作图片旋转放大的效果。 一、HTML代码   照片墙 ...
  • u010016833
  • u010016833
  • 2014年12月03日 20:47
  • 2055

android图片处理:让图片一直匀速旋转

让图片匀速旋转
  • dl10210950
  • dl10210950
  • 2016年08月10日 20:19
  • 10837

Java实现图片内容无损任意角度旋转

主要问题是如何在图片做旋转后计算出新图片的长宽。 在java 2d和基本math库的帮助下,其实利用简单的计算就可以知道。 以下算法只是计算出旋转小于90度时的公式。当旋转大于...
  • W895972478
  • W895972478
  • 2015年08月27日 21:40
  • 2665

基于C#的两种图片旋转方法

/// /// 根据角度旋转图标 /// /// public Image RotateImg(Image img, float ...
  • jiayp004
  • jiayp004
  • 2016年01月14日 15:59
  • 3724

java 图片绕中心旋转

用rotate()旋转图片时发现旋转中心是窗口左上角,但该种旋转不美观且不实用。看过书后,发现可以使用translate()函数解决该问题。 效果如下:代码如下: /** * imag...
  • MAO_JIN_DAO
  • MAO_JIN_DAO
  • 2016年08月10日 20:40
  • 4583

定时旋转图片

预览:     1.从网上下载一个图片,拖到image资源文件夹中 2.在故事板的相应位置,拉一个ImageView控件,设置源为下载的图片 3.关联映射 4.设置旋转函数rat...
  • m_052148
  • m_052148
  • 2015年09月19日 21:10
  • 661

C#图像剪裁、缩放、旋转、转化为鼠标光标

C#实现图像的剪裁、缩放、旋转、镜像、转化为鼠标光标
  • scimence
  • scimence
  • 2015年04月02日 10:03
  • 1724
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:MIDP1.0实现图片的旋转
举报原因:
原因补充:

(最多只允许输入30个字)