MIDP1.0实现图片的旋转
来源:互联网 发布:音乐相册软件哪个好 编辑:程序博客网 时间:2024/05/22 11:59
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;
}
{
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;
}
- MIDP1.0实现图片的旋转
- MIDP1.0实现图片翻转
- MIDP1.0中实现对图片的透明处理
- 在MIDP1.0下实现图片翻转
- MIDP1.0中实现三角形的填充
- 正玄余玄在midp1.0里的实现方法
- 基于MIDP1.0实现动画效果
- 基于MIDP1.0实现通信录
- 基于MIDP1.0实现RMS容量探测器
- 基于MIDP1.0实现动画效果
- 基于MIDP1.0实现动画效果
- 基于MIDP1.0实现组合按键
- 基于MIDP1.0实现组合按键
- 基于MIDP1.0实现组合按键
- 使用MIDP1.0实现TiledLayer的效果,并实现简单的滚屏
- VC++实现图片的旋转
- js实现旋转的图片
- python 实现图片的旋转
- hibernate配制文件三(Hiebernate.cfg.xml)
- Everyday Study___MS Agent
- JSP和JSF合并 共同打造完美的Web应用-2
- 让hibernate支持Access(转)
- Tomcat6配置SSL的方法
- MIDP1.0实现图片的旋转
- hibernate配制文件四(对象标识符号)
- GridView无限层复杂表头的实现
- java调用c(linux下)
- JS截获回车键的方法并模拟Tab键
- 遇到个EJB难题。。。求助
- OSISoft实时/历史数据库PI的数据存储机制分析
- 第九届深圳高交会最大成果-全球首个黄种人基因组图谱在我国诞生
- Oracle 10gas 基本管理指南