background 图片比例缩小_LCD屏显示图片:效果记录01

1953e3f0ecfc3618a861ca5143051885.png

图控大叔

构图传递思想

阅读从未如此简单!!!

01

前言

       今天有点闹心,昨晚LCD触摸屏触摸功能还好好的,今天莫名其妙地失灵了,害,本来还想测试滑动功能的,只能先凉着。不过今天实现了图片的放大与缩小,但是依然有不足,现在的图片放大缩小代码只能针对:

1、已知的分辨率比例

2、固定的放大或缩小比例

       还没有实现像手机的那样,想大一点就大一点,想小一点就小一点!先不说了,把今天的效果录下来,放在这里下面!

02

部分代码

int bmp_size_h_480_240(int bmp_w, int bmp_h,int lcd_w, int lcd_h,unsigned int *color, unsigned int *addr,int center,int star_h, int star_w){
  
  //1、局部清屏
  if( center==1)
  Clear_the_screen(bmp_w,bmp_h,lcd_w,lcd_h,background_color,addr);
  else{
    
  }
  //2、尺寸变换

  int w = 0;
  int h = 0;
  
  w = bmp_w/2;//350
  h = bmp_h/2;//240
  
  unsigned int lcd_buf[w*h];
  bzero(lcd_buf, w*h*4);
  
  w = 0;
  h = 0;
  
  unsigned int i, j;
  for(j=0; j  {
    if(j%2==0)
    {
      for(i=0; i      {
        if( i%2==0 )
        {
          lcd_buf[w+h*bmp_w/2] = color[i+j*bmp_w];
          w++;
        }
      }
      h++;
      w = 0;
    }
  }
  w = bmp_w/2;//350
  h = bmp_h/2;//240

  //3、居中显示或者按位置填充
  if( center ==1 )
  show_in_center(w,h,lcd_w,lcd_h, lcd_buf, addr);
  else
  {
    for(j=0; j    {
      for(i=0; i      {
        //显示到指定坐标位置,正立的
        *(addr+i+(h-1-j)*800+800*star_h+star_w) = lcd_buf[i+j*w];

      }
      //usleep(1000);//此处加入延迟便于观察,可注释掉
    }
  }
  //4、结束
  return 0;
}
/*
传参有点多,下次要弄成传结构体
*/

03

演示视频

有声版:王者荣耀配乐(记得全屏看)

无声版(记得全屏看)

04

结尾

       好了,本次的分享到这里就要结束了,想想怎样才能找到方法把触摸屏失灵的问题解决!

       《图控大叔》,与你一起进步!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值