解决 Android 分享到小程序 封面显示不全

参考:解决Android 微信分享小程序图片显示不全_Keung丶的博客-CSDN博客_小程序分享图片显示不全

上面分享的封面还是不满足需求,我们需求是填充满高度或者宽度,在原基础上做修改:

修改后:

/**
 * Bitmap   分享到小程序-显示完成的封面图居中
 * @param bitmap
 * @return
 */
public static Bitmap drawWXMiniBitmap(Bitmap bitmap) {
    int width;
    int height;
    double ratioMax=1.25;//5/4=1.25
    // 先按5:4生成一张白色背景图片
    boolean isWidthLong = bitmap.getWidth() > bitmap.getHeight();
    if (isWidthLong) {//宽屏
        width = bitmap.getWidth();
        height = (int) (width /ratioMax);// 微信显示小程序的图片是5:4
    } else {//竖屏
        height = bitmap.getHeight();
        width = (int) (height *ratioMax);
    }
    Bitmap mBitmap = Bitmap.createScaledBitmap(bitmap, width, height, true);
    // 用这个Bitmap生成一个Canvas,然后canvas就会把内容绘制到上面这个bitmap中
    Canvas mCanvas = new Canvas(mBitmap);
    mCanvas.drawColor(Color.WHITE);
    // 绘制画笔
    Paint mPicturePaint = new Paint();
    // 绘制背景图片
    mCanvas.drawBitmap(mBitmap, 0.0f, 0.0f, mPicturePaint);

    mCanvas.drawBitmap(bitmap, (width-bitmap.getWidth())/2f, (height-bitmap.getHeight())/2f, mPicturePaint);
    // 保存绘图为本地图片
    mCanvas.save();
    mCanvas.restore();
    return mBitmap;
}

期间遇到一个很奇怪的问题,白色画布的比例就是5:4的时候,分享出去,也还是有一点显示不全,宽屏的就宽显示不全,竖屏的就竖显示不全,明明比例一样?

不知道有没有其他人遇到这样的问题,比例一样的,却还是显示不全

另外说分享的图片限制32k,128k的,我看官网文档说的是32k,这样压缩出来会不会太模糊了,我没做压缩处理,好像也可以分享?

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值