最近在做一个小的Android项目中遇到一个问题,就是不知道为什么机器输出的分辨率不稳定,总是有几十个像素的误差。导致屏幕适配出现了问题。这次主要记录一下解决思路。

问题就如图 主要是一张背景图 ,在背景图指定区域去镶嵌一张指定图片。

对于这种简单的解决思路就是 将两张图片合成为一张 。因为背景图的尺寸是固有的的 所以合成后显示, 这样就不会乱了。

上代码

 /*** 合成图片* @param big  底图* @param small 小图* @param xInRatio 小图在底图中的横坐标(相对于底图宽的比例)* @param yInRatio 小图在底图中的纵坐标(相对于底图高的比例)* @return*/public static Bitmap mergeWithCrop(Bitmap big, Bitmap small, float xInRatio, float yInRatio){int bigW = big.getWidth();int bigH = big.getHeight();
//scale 计算背景图被缩放的比例   1920 为本人原图实际宽度float scale = (float) (bigW/1920.0);
//newsmallw 计算镶嵌图的尺寸   270为镶嵌位置实际宽高(正方形)int newsmallw = (int) (270*scale);Bitmap newBmp=Bitmap.createBitmap(bigW,bigH,Bitmap.Config.RGB_565);Canvas cv=new Canvas(newBmp);//在0,0坐标开始画入bgcv.drawBitmap(big,0,0,null);
//        开始画入fg,可以从任意位置画入,具体位置自己计算int smallX = (int)(bigW*xInRatio);int smallY = (int)(bigH*yInRatio);
//设置镶嵌图片的位置Rect sRect = new Rect(smallX, smallY, smallX+newsmallw, smallY+newsmallw);
//将小图镶嵌到背景图指定位置cv.drawBitmap(small,null,sRect,null);return newBmp;}

android 中关于两张图片叠加方法(记录)相关推荐

  1. android判断两个图片相同,android中比较两张图片的相似度

    public static String similarity (Bitmap b,Bitmap viewBt) { //把图片转换为Bitmap Bitmap bm_one = b; Bitmap ...

  2. css将两张图片叠加(简易方法)

    @开启博客之旅,记录生活 css将两张图片叠加 本质上的原理其实是,一个作为背景图片,另一个作为DOM节点元素添加进去.这是我本人的第一篇正式博客,我觉得,现在分享学习到的知识还不晚.刮风了,待会去吃 ...

  3. (最新react-native-0.59.5) 如何将ReactNative项目集成到现有得Android项目中(两种实现方法之一)

    背景:最近在学习React-Native相关的知识,有个需求,如果已经存在一个成熟的Android 或者 IOS项目,如何实现在后续的开发中用RN来实现部分功能.再此我只是讲解一下Android de ...

  4. Matlab中实现两张图片的叠加显示效果

    Matlab中实现两张图片的叠加显示效果 1.相同大小图片的叠加显示 2.不同大小图片的叠加显示 ** 在matlab中以50%透明度实现两张图图片的叠加显示,图片的大小可以任意设置,不同大小的图片, ...

  5. android sqlite自定义函数,Android中自定义一个View的方法详解

    本文实例讲述了Android中自定义一个View的方法.分享给大家供大家参考,具体如下: Android中自定义View的实现比较简单,无非就是继承父类,然后重载方法,即便如此,在实际编码中难免会遇到 ...

  6. android 图像对比,Android中比较两个图片是否一致的问题

    在Fragment界面中,设置两个图片一致如下: 默认设置图片为: binding.ivArrow.setImageResource(R.drawable.icon_down); 先获取默认图片,再和 ...

  7. android studio gradle 自动更新,android studio gradle 两种更新方法更新

    又快一年没有使用AS了,正好要查看一个Android项目代码,干脆升级到新版试试看新变化,旧版本为3.1.2,目前最新版本为3.4.2,AS的升级是很简单的直接update等待即可. 升级完了,打开G ...

  8. Android中集成第三方库的方法和问题

    Android中集成第三方库的方法和问题 声明: 1. 本文參考了网上同学们的现有成果,在此表示感谢,參考资料在文后有链接. 2. 本文的重点在第三部分,是在开发中遇到的问题及解决的方法.第一,第二部 ...

  9. Latex在同一figure中排版多张图片的方法

    Latex在同一figure中排版多张图片的方法 主要使用了minipage(子图)语法.minipage可以嵌套,子图还可以分解为更多子图,功能很好玩,无聊可以自己试试.下面介绍几种常用效果的实现方 ...

最新文章

  1. SQL代码-创建DeskInfo表
  2. 较高人工智能的人机博弈程序实现(多个算法结合)含C++源码
  3. 九度OJ 1028:继续畅通工程 (最小生成树)
  4. c语言在win8系统不兼容,Win8系统中存在不兼容软件怎么办?
  5. python搭建项目结构_Django搭建项目实战与避坑细节详解
  6. 2018NOIP普及组初赛解析
  7. nodejs上传图片并展示
  8. 03-05 APP自动化测试-常用定位方式
  9. linux 内核任务调度,Linux任务调度
  10. 阿里辟谣:不会高薪聘请黑阿里网站的人;苹果欲用 iPhone 替代身份证和护照;Python 3.9.0b4 发布| 极客头条
  11. leetcode刷题日记-边界着色
  12. 小D课堂 - 新版本微服务springcloud+Docker教程_5-03 feign结合hystrix断路器开发实战上...
  13. VC如何设置默认的调试程序
  14. 记录一次.net 4.7.2安装失败解决情况
  15. chrome插件开发(Demo案例)
  16. 网页在ie内核的浏览器下面整体偏左
  17. 新手必备:网关与网段、IP协议、主机与DNS 、访问控制 资料汇总110篇
  18. 企业微信社群运营该怎么做?
  19. 今日头条是怎么盈利的?
  20. 服务器如何数据备份?

热门文章

  1. 区块链中的记账权问题
  2. html、css 实现一个漂亮的表格
  3. 解锁x-pack 8.x白金限制
  4. 计算机如何安装程序,怎么禁止电脑安装任何软件?禁止计算机安装程序的方法(图文)...
  5. 在R、Python和Julia中常用的数据可视化技术
  6. 【矩阵论笔记】最小多项式与Jordan型的关系
  7. BearPi_HM Nano开发板环境搭建踩坑
  8. 初识dubbo(随笔)
  9. 小米装linux系统教程视频,小米手机 连接在Ubuntu 下调试
  10. Java程序员掌握的Linux 基本操作