16.11.23 miniblink更新

1、修复png图片显示不了的bug。如果一个img既设置了src又设置了background,就可能导致这个问题。

bug触发的条件是src使用了一像素大小的透明png。
bug的原因是使用了gdip来解析png,这会先转换成bmp再丢给默认的bmpdecoder来解码,但忘记了设置ImageFrame::setHasAlpha。这在LayoutImage::foregroundIsKnownToBeOpaqueInRect会导致blink认为src的image是不透明的,这样就不用绘制真实的background。在map.qq.com会出现此bug。
在修复此bug的同时,还重构了gdpp解码方式。以前的方式要转成bmp,这个样效率太低。现在直接gdip解码后送入ImageFrame。但目前还不完美,是每个像素的设置。以后有时间改成一段段的设置

2,修复自己写的cc层导致复杂网页部分内容显示不出来的bug。

原因是skia的intersect居然在矩形不相交时,不会清空原矩形,大坑啊

下载地址:https://github.com/weolar/miniblink49

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

扫码关注云+社区

领取腾讯云代金券