当前位置: 首页 > news >正文

门户网站内容管理系统品牌设计的原则有哪些

门户网站内容管理系统,品牌设计的原则有哪些,移动网站开发教程,电脑网络游戏From: http://blog.chinaunix.net/uid-24789420-id-3191806.html 一、概述 最近看到网上有人问怎么用C语言实现屏幕截图#xff0c;刚好自己也在研究Linux驱动#xff0c;于是花了半天时间把Linux的FrameBuffer驱动看懂了个七八#xff0c;接着就动手写了个LCD屏幕截图的应…From: http://blog.chinaunix.net/uid-24789420-id-3191806.html 一、概述 最近看到网上有人问怎么用C语言实现屏幕截图刚好自己也在研究Linux驱动于是花了半天时间把Linux的FrameBuffer驱动看懂了个七八接着就动手写了个LCD屏幕截图的应用程序。 一些说明 1. 板子LCD的分辨率为480x272像素格式为RGB565。 2. 程序首先获取LCD的一些参数 然后将获取到的一帧数据转换为RGB24格式最后用jpeglib库压缩为jpg格式的图片。 3. 在嵌入式Linux的板子上测试通过。 二、实现 程序中有注释不多说直接上程序 #include stdio.h #include stdlib.h #include sys/ioctl.h #include unistd.h #include fcntl.h #include malloc.h #include linux/fb.h #include jpeglib.h #include jerror.h/*RGB565转RGB24函数*rgb565: 指向存放rgb565数据的起始地址*rgb24指向存放rgb24数据的起始地址*width屏幕(分辨率)的宽度*height屏幕(分辨率)的高度*/ int RGB565_to_RGB24(unsigned char *rgb565, unsigned char *rgb24, int width, int height) {int i;int whole width*height;unsigned char r, g, b;unsigned short int *pix565;pix565 (unsigned short int *)rgb565;for(i 0;i whole;i){ r ((*pix565)11)0x1f;*rgb24 (r3) | (r2);rgb24;g ((*pix565)5)0x3f;*rgb24 (g2) | (g4);rgb24;b (*pix565)0x1f;*rgb24 (b3) | (b2);rgb24;pix565; }return 1; }/*jpeg压缩函数*rgb指向存放rgb24数据的起始地址*width屏幕(分辨率)的宽度*height屏幕(分辨率)的高度 */ int jpeg_compress(unsigned char *rgb, int width, int height) {struct jpeg_compress_struct cinfo;struct jpeg_error_mgr jerr;FILE * outfile;JSAMPROW row_pointer[1];int row_stride;cinfo.err jpeg_std_error(jerr);jpeg_create_compress(cinfo);// 输出文件名为out.jpgif ((outfile fopen(out.jpg, wb)) NULL){printf(can not open out.jpg\n);return -1;}jpeg_stdio_dest(cinfo, outfile);cinfo.image_width width;cinfo.image_height height;cinfo.input_components 3; // 1-灰度图3-彩色图// 输入数据格式为RGBcinfo.in_color_space JCS_RGB; // JCS_GRAYSCALE-灰度图JCS_RGB-彩色图jpeg_set_defaults(cinfo);jpeg_set_quality(cinfo, 80, TRUE); // 设置压缩质量80jpeg_start_compress(cinfo, TRUE); // 开始压缩过程row_stride width * 3; // row_stride: 每一行的字节数while (cinfo.next_scanline cinfo.image_height){row_pointer[0] rgb[cinfo.next_scanline * row_stride];(void) jpeg_write_scanlines(cinfo, row_pointer, 1);}jpeg_finish_compress(cinfo); // 完成压缩过程fclose(outfile);jpeg_destroy_compress(cinfo); // 释放资源return 1; }int main() {int fd;struct fb_var_screeninfo fb_var_info;struct fb_fix_screeninfo fb_fix_info;unsigned char *trgb;unsigned char *rgb;int buffer_size;// 打开framebuffer设备fd open(/dev/fb0, O_RDONLY);if(fd 0){printf(can not open dev\n);exit(1);}// 获取LCD的可变参数ioctl(fd, FBIOGET_VSCREENINFO, fb_var_info);// 一个像素多少位 printf(bits_per_pixel: %d\n, fb_var_info.bits_per_pixel);// x分辨率printf(xres: %d\n, fb_var_info.xres);// y分辨率printf(yres: %d\n, fb_var_info.yres);// r分量长度(bit)printf(red_length: %d\n, fb_var_info.red.length);// g分量长度(bit)printf(green_length: %d\n, fb_var_info.green.length);// b分量长度(bit)printf(blue_length: %d\n, fb_var_info.blue.length);// t(透明度)分量长度(bit)printf(transp_length: %d\n, fb_var_info.transp.length);// r分量偏移printf(red_offset: %d\n, fb_var_info.red.offset);// g分量偏移printf(green_offset: %d\n, fb_var_info.green.offset);// b分量偏移printf(blue_offset: %d\n, fb_var_info.blue.offset);// t分量偏移printf(transp_offset: %d\n, fb_var_info.transp.offset);// 获取LCD的固定参数ioctl(fd, FBIOGET_FSCREENINFO, fb_fix_info);// 一帧大小printf(smem_len: %d\n, fb_fix_info.smem_len);// 一行大小printf(line_length: %d\n, fb_fix_info.line_length);// 一帧大小buffer_size (fb_var_info.xres * fb_var_info.yres * fb_var_info.bits_per_pixel / 8);trgb (unsigned char *)malloc(buffer_size);if(trgb NULL)exit(0);rgb (unsigned char *)malloc(fb_var_info.xres * fb_var_info.yres * 3);if(rgb NULL){goto here;}if(read(fd, trgb, buffer_size) 0) // 获取一帧数据{printf(read failed!\n);goto read_fail;}// 格式转换RGB565_to_RGB24(trgb, rgb, fb_var_info.xres, fb_var_info.yres);// jpeg压缩if(jpeg_compress(rgb, fb_var_info.xres, fb_var_info.yres) 0)printf(compress failed!\n); read_fail:free(rgb); here:free(trgb);close(fd);return 0; }注意编译时加上 -ljpeg
http://www.yutouwan.com/news/218345/

相关文章:

  • 网站建设是不是可以免费建站做外贸应该去什么网站
  • 固始网站建设公司阿里云网站方案建设书
  • 网站开发环境怎么写做网站用到什么开发语言
  • 网站建设收费标准方案姓氏头像在线制作免费生成图片
  • 哪些属于功能型网站网站建设案例教程试卷
  • 佛山建设外贸网站公司吗设计网站专业
  • 有什么做ppt参考的网站深汕特别合作区房价
  • 好听大气的公司名字绍兴网站建设优化
  • 深圳做网站公司多少钱微信里的小程序怎么删了
  • 网站开发入门书彩票网站开发 极云
  • 高校思政教育工作网站建设中山手机网站建设费用
  • 医疗 企业 网站制作投资手机网站源码
  • 如何做拼多多商城官网站网页制作素材照片和文案
  • 网站攻击一般有那些如何做百度搜索推广
  • 推广及建设网站长春品牌网站建设公司
  • xd软件可做网站吗丽水市莲都建设分局网站
  • wordpress图片网站wordpress musicpro
  • 服务器维护费用明细增城网站怎么做seo
  • 零食天堂专做零食推荐的网站亚马逊aws wordpress
  • 仿糗事百科网站源码dede二次开发分享+评论+互动冬夜主题wordpress
  • 网站建设在国内外有何趋势做网站卖产品怎么开展
  • 山东中讯做网站怎么样网站开发的历史
  • 顺德网站建设市场构建网站需要会什么
  • 网站seo可以做吗南通网站建设小程序
  • 阿里云建站视频教程WordPress模块置顶
  • 专门做电商的招聘网站交易网站建设需要学什么
  • 随州网站建设推荐海安网站设计公司
  • jsp做的零食小网站建设工程信息在哪个网站
  • 需要大量做网站做推广的行业建筑图纸字母代号大全图解
  • 宜昌网站推广优化技巧全自动推广引流软件