struct fb_fix_screeninfo 該結構體保存的是關於屏幕固定的參數code
struct fb_var_screeninfo 該結構體保存的是關於屏幕變化的參數,須要獲取frame buffer以前,這個結構體須要更新。class
fb_var_screeninfo 的參數介紹
date
xres 可見矩形的widthim
yres 可見矩形的heightimg
xres_virtual vi
yres_virtualcopy
xoffsetco
yoffset結構體
void copyFromFrameBuffer() { kesyPrintf("copyFromFrameBuffer\n"); update_fb_info(); char* vfd = (char*)readBufferFB(); void const* base = 0; int bytespp = 4; size_t offset = fscrinfo.line_length * scrinfo.yoffset + (scrinfo.xoffset) * bytespp; base = (void const *)((char const *)vfd + offset); int w = scrinfo.xres; int h = scrinfo.yres; int s = scrinfo.xres_virtual; kesyPrintf("w=%d,h=%d,s=%d\n", w, h, s); int y = 0; for (y=0 ; y<h ; y++) { memcpy(gNewBuf + y*w*bytespp, base, w*bytespp); base = (void *)((char *)base + fscrinfo.line_length); } }