Recovery和Charger模式下屏幕旋转180度
转自:http://www.etwiki.cn/android/1267.html
如何让Recovery (系统固件升级),charger(关机充电动画)时屏幕旋转180度
解决方法:
1.在bootable\recovery\minui\Graphics.c 文件找到gr_flip(void)方法
把memcpy(gr_framebuffer[gr_active_fb].data,gr_mem_surface.data, fi.line_length*vi.yres);
修改为
rotate_180(gr_framebuffer[gr_active_fb].data,gr_mem_surface.data, fi.line_length*vi.yres);
2.添加方法
void *rotate_180(void *_dst,const void *_src,int len)
{
int pixelSize = PIXEL_SIZE,size,step = len/pixelSize;//像素个数
unsigned char *dst = _dst;
const unsigned char *src = _src + len;
while(step-- > 0){
size = pixelSize;
src -=size;
while(size-- > 0){
*dst++ = *src++;
}
src -=pixelSize;
}
return _dst;
}
rotate_180方法的作用就是把buffer中的数据按像素倒转过来
例如:原始数据
{(1,2,3),(4,5,6),(7,8,9),
(a,b,c),(d,e,f),(g,h,i),
(A,B,C),(D,E,F),(G,H,I)
}
180度旋转后数据
{(G,H,I),(D,E,F),(A,B,C),
(g,h,i),(d,e,f),(a,b,c),
(7,8,9),(4,5,6),(1,2,3)
}
每个像素的数据不变,以像素为单位旋转顺序
这样就完成了旋转
Recovery和Charger模式下屏幕旋转180度的更多相关文章
- Recovery和Charger模式下屏幕旋转180度[转]
如何让Recovery (系统固件升级),charger(关机充电动画)时屏幕旋转180度 解决方法: 1.在bootable\recovery\minui\Graphics.c 文件找到gr_fli ...
- OV5640全景模式预览倒180度,拍照正常的问题
此方法基本上适用于所有android平台上全景模式预览倒180度,拍照正常的问题. 首先说明的是,影响camera方向的有三个地方,分别是系统方向,内核camera方向和驱动镜像.全景模式预览只跟系统 ...
- 实现Unity编辑器模式下的旋转
最近在做一个模型展示的项目,我的想法是根据滑动屏幕的x方向差值和Y方向的差值,来根据世界坐标下的X轴和Y轴进行旋转,但是实习时候总是有一些卡顿.在观察unity编辑器下的旋转之后,发现编辑器下的旋转非 ...
- MTK 屏幕旋转90度
http://blog.csdn.net/ouo555/article/details/44806837 1.屏幕显示顺时针旋转90度 lk 横屏logo,顺时针旋转90度显示修改bootable/b ...
- Lodop打印旋转180度 倒着打
方法1:打印出来后,直接把纸张倒过来.如果本身是白纸,打印机出纸内容是倒着的,可以打出来后手动倒着把纸张正过来.如果本身不是白纸,需要打印的纸张上有背景,调整进纸方向.(如果是卷纸,卷纸背景是反的,查 ...
- css3+jq--小箭头旋转180度案例
html: <aside class="tea_getBtn"> <div class="w"> <span class=&quo ...
- QT5 屏幕旋转90度
主要思路是将所有项目界面加载到QGraphicsScene,再进行旋转操作.直接上代码#include <QApplication>#include <QGraphicsView&g ...
- 【分享】迅为iTOP4412开发板-Android系统屏幕旋转设置
1.1概述 Android4.0,Androd4.4源代码能够编译成手机模式和平板模式,讯为iTop4412 开发平台 的Android系统默认编译为平板模式.客户须要依据自己的产品设计及应用环境,切 ...
- View页面内容的旋转,在某些情况下可替代屏幕旋转使用
这个是在做小秘书的体重曲线图的时候用到的,横排的时候可以多显示些内容,可是由于很多未知的冲突导至屏幕旋转起来非常麻烦,可用用旋转页面的内容来达到旋转屏幕的效果. 代码如下: //旋转90度 CGAff ...
随机推荐
- cocos2d-x 内存管理浅析
Cocos2d-x用create创建对象, 这个方法已经被引擎封装成一个宏定义了:CREATE_FUNC, 下面是这个宏定义的实现: #define CREATE_FUNC(__TYPE__) \ ...
- eclipse中整合springMvc和velocity
1.项目所需要的jar包(有些可能多余) 2.在src目录下创建一个bean 一个一个controller ,路径如下 person代码: package com.test.bean; import ...
- am335x 虚拟机环境变量的设置及注释
我用的还是老的Linux3.2.0的内核,只是借用了TI am335x SDK 3.0里面的工具. 首先下载TI官方的SDK,上一章已经安装了一个Ubuntu14.04的虚拟机. TI 最新的SDK下 ...
- 怎样在myEclipse中使用debug调试程序?
怎样在myEclipse中使用debug调试程序? 最基本的操作是: 1.首先在一个java文件中设断点,然后debug as-->open debug Dialog,然后在对话框中选类 ...
- String和StringBuffer的转换
从String到StringBuffer: StringBuffer sb = New StringBuffer("abcd");从StringBuffer到String: Str ...
- Objective C 快速入门学习四
类 1.合成存取器方法 @property 成员变量 @synthesize 成员变量 可以让编译器自动合成 设置和获取函数的方法,不用手动生成set成员变量,Get成员变量 @interface ...
- struts2 校验demo
综合练习: <validators> <field name="username"> <field-validator type="requ ...
- struts2 提供的校验器列表
- ansible操作远程服务器报Error: ansible requires the stdlib json or simplejson module, neither was found!
通过ansible执行远程命令时报如下异常: Error: ansible requires the stdlib json or simplejson module, neither was fou ...
- 解读Unity中的CG编写Shader系列一
转自http://www.itnose.net/detail/6095323.html 前提知识点: 1.CG代码必须用 CGPROGRAM ... ENDCG括起来 2.顶点着色器与片段着色器的主函 ...