Android中微信小程序的图片优化技巧分享
本篇文章为大家展示了Android中微信小程序的图片优化技巧分享,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
前言
小菜上周接入了微信分享小程序的入口,基本功能实现都没问题,有需要的朋友可以了解一下 Android 分享微信小程序失败二三事,虽然功能都正常,但整体测试发现图片展示效果不佳。于是小菜整理了一个简单的小方法处理一下图片!
微信规定,分享小程序展示的图片应该在 128KB 以内,同时图片默认展示比例为 5:4,这样小菜默认的图很多是竖直的图,只会展示一部分。
遮挡部分图片
规定
小菜尝试了图片的【等比压缩】【非等比压缩】和【不压缩】,效果依旧不合适,图片所占位置默认以横向方向填充满分享出的布局。于是小菜决定重新用 Canvas 绘制一张图,将所要展示的图片居中展示,整理方法如下:
publicstaticBitmapdrawWXMiniBitmap(Bitmapbitmap,intwidth,intheight){ BitmapmBitmap=Bitmap.createBitmap(width,height,Bitmap.Config.ARGB_8888); //用这个Bitmap生成一个Canvas,然后canvas就会把内容绘制到上面这个bitmap中 CanvasmCanvas=newCanvas(mBitmap); //绘制画笔 PaintmPicturePaint=newPaint(); //绘制背景图片 mCanvas.drawBitmap(mBitmap,0.0f,0.0f,mPicturePaint); //绘制图片的宽、高 intwidth_head=bitmap.getWidth(); intheight_head=bitmap.getHeight(); //绘制图片--保证其在水平方向居中 mCanvas.drawBitmap(bitmap,(width-width_head)/2,(height-height_head)/2, mPicturePaint); //保存绘图为本地图片 mCanvas.save(); mCanvas.restore(); returnmBitmap; }
小菜测试时发现,很多图片的尺寸大小和宽高比并非固定的,为了适配整体展示效果,当宽高比小于1时,根据图片高度来计算整体绘制 Bitmap 宽,Bitmap 可以根据需求展示相应的本地资源图或网络图,宽高可以直接设置 5:4 大小,小菜测试 width = 300; height = 240 整体效果较为合适。大家可以根据个人需求自定义图片样式。
Bitmapbitmap=BitmapUtil.drawWXMiniBitmap(bitmap,bitmap.getHeight()*5/4,bitmap.getHeight()); if(BitmapUtil.isOverSize(bitmap,128)){ bitmap=Utils.resizeBitmap(bitmap,300,240); }
Tips: 绘制完成之后的图会比原图大,所以需要先绘制图片,再判断图片是否超过 128KB。若超过 128KB 需要进行压缩,公共的方法暂时就省略啦!
上述内容就是Android中微信小程序的图片优化技巧分享,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注恰卡编程网行业资讯频道。
推荐阅读
-
我的世界windows版怎么下载手机版
-
android(如何快速开发框架 小米note开发版MIUI,安卓6.0,怎么安装Xposed框架)
稳定版,你必须先根除。你上网搜索安卓可以叫别人s框架,对方可以把框架做成jar包,把这个jar包加载到项目目录的libs文件中使...
-
android(studio 虚拟机启动不了 android studio可以当模拟器用吗)
androidstudio可以当模拟器用吗?AmdCUP引导模拟器有点复杂。雷电模拟器上的抖音怎么登录不上?不是,闪电模拟调用...
-
从实践中学习手机抓包与数据分析(android 手机抓包app)
android手机抓包app?netcapture抓包精灵app(手机抓包工具)又名sslcapture,是什么专业的安卓手机抓...
-
android(studio全局搜索 android studio怎么看app界面)
androidstudio怎么看app界面?在设备桌面点击运用直接进入到App界面,就也可以参与其他你的操作了。android-...
-
怎么把android框架源代码拉到本地(android studio如何运行别人的源代码)
androidstudio如何运行别人的源代码?androidstudio点击刚建在列表中你选择导入module,导入即可在用...
-
android(studio2022年使用教程 怎么安装Android studio详细教程)
怎么安装Androidstudio详细教程?androidstudio中haxm直接安装的方法追加:1、简单的方法打开Andr...
-
怎么使用Android基准配置文件Baseline Profile方案提升启动速度
怎么使用Android基准配置文件Baseline Profile方案提升启动速度...
-
HTML5如何实现禁止android视频另存为
HTML5如何实现禁止android视频另存为今天小编给大家分享一...
-
学java好还是学php好?