Android 头像png转Bitmap展示有黑边的问题

timg.jpeg

png转图片变黑的问题,我是在分享到微信时碰到的,当时iOS没啥问题,Android这边图片下载、在网页上查看都是没有问题的,但是应用内和分享到微信,就会导致这个问题的出现

解决方案

  • 应用内的,其实可以打开Bitmap 的一个参数,这样在使用ImageView去加载的时候,就不会出现黑边的问题了
bitmap.setHasAlpha(true);//绘制时告知Bitmap是否是透明的
  • 分享到微信,则需要重新给Bitmap添加颜色,然后将原先的黑边覆盖掉,这种方式也可以用于ImageView 的展示
/**
  * 防止 png 转 bitmap导致分享出去变黑的问题
  */
    private Bitmap setBitmapBackgroundColor(Bitmap bitmap, int color) {
        Bitmap newBitmap = Bitmap.createBitmap(bitmap.getWidth(), bitmap.getHeight(), Bitmap.Config.ARGB_4444);
        Canvas canvas = new Canvas(newBitmap);
        canvas.drawColor(color);
        Paint paint = new Paint();
        canvas.drawBitmap(bitmap, 0, 0, paint);
        return newBitmap;
    }

注意:下面的方法不能设置颜色透明,否则没效果

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容