画面倒置的实现(通过Bitmap图像旋转)

原创 2013年12月03日 18:00:13

在项目中要实现一个播放画面的倒置,播放画面是通过解码后用Bitmap展示的,所以我通过图像旋转180°来实现。

在项目中定义一个Flag,来判定是否需要倒置。通过rotateBitmap()函数还可以实现任意角度的旋转。

//在播放画面View控件的OnDraw()方法中,加入下面的语句,通过isInvert判断是否倒置
//其中VideoBitmap存放的是解码得到的画面信息
if (isInvert == true) {
	VideoBitmap = rotateBitmap(VideoBitmap, 180);
}
//后面是对图片进行处理展示的代码,省略...

//实现函数:
public Bitmap rotateBitmap(Bitmap bitmap, int degrees) {
	if (degrees != 0 && bitmap != null) {
		Matrix matrix = new Matrix();
		matrix.setRotate(degrees, (float) bitmap.getWidth()/2,
				(float) bitmap.getHeight()/2);
		try {
			Bitmap tempBm = Bitmap.createBitmap(bitmap, 0, 0, bitmap.getWidth(),
					bitmap.getHeight(), matrix, true);
			if (bitmap != tempBm) {
				// bitmap回收
				bitmap.recycle();
				bitmap = tempBm;
			}
		} catch (Exception e) {
			// TODO 自动生成的 catch 块
			e.printStackTrace();
		}
	}
	return bitmap;
}


对Bitmap 进行水平或者垂直的镜面翻转

Matrix m = new Matrix(); if (i < 4) m.setScale(-1, 1);//水平翻转 ...

使用Matrix对bitmap的旋转和镜像水平垂直翻转

Bitmap convert(Bitmap a, int width, int height) { int w = a.getWidth(); int h = a.getHeight(); ...

何将图片上下翻转?

 这是我修Computer Vision的作业,此源代码也示范出如何Pixel By Pixel的方式编辑图片以及如何读取indexd的bmp图片格式。 1@ Page Language="C#" %...

Android学习笔记之Bitmap位图的旋转

位图的旋转也可以借助Matrix或者Canvas来实现。 通过postRotate方法设置旋转角度,然后用createBitmap方法创建一个经过旋转处理的Bitmap对象,最后用drawBitma...
  • SJF0115
  • SJF0115
  • 2012年02月15日 22:27
  • 23868

android自定义View实现图片的绘制、旋转、缩放

1、图片 把一张JPG图片改名为i

android bitmap翻转180,镜像的简单实现方法

这两天做项目是要用到bitmap的镜像翻转,上网找了半天没有找到。于是,自己慢慢的调。功夫不负有心人,总算是搞定了。。以下分享代码:@Overridepublic void onDraw(Canvas...

C++图像处理 -- 图像翻转(镜像)

阅读提示:    《C++图像处理》系列以代码清晰,可读性为主,全部使用C++代码。    《Delphi图像处理》系列以效率为侧重点,一般代码为PASCAL,核心代码采用BASM。    尽可能保持...
  • maozefa
  • maozefa
  • 2012年12月12日 22:24
  • 10477

Matrix旋转bitmap一些坑

废话: 今天写了一个音乐播放器中CD旋转的View,其中在旋转Bitmap的时候发现一些问题,记录一下,也希望帮到有一样困惑的朋友我要将一张CD图片的bitmap不断的旋转,达到预期效果一开始在网上找...

对bitmap进行旋转和镜像操作

Bitmap convert(Bitmap a, int width, int height) { int w = a.getWidth(); int h = a.getHeight(); B...

代码翻转bitmap图。水平翻转,垂直翻转。

package com.makyoo.bitmapchange{ //www.makyoo.cn    makyoo    QQ:84407979    import flash.display.Sp...
  • xiang08
  • xiang08
  • 2009年08月10日 17:08
  • 2716
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:画面倒置的实现(通过Bitmap图像旋转)
举报原因:
原因补充:

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