zoukankan      html  css  js  c++  java
  • 迅雷Bolt的ClipSubBindBitmap函数特别说明

    因为在工作中基于迅雷Bolt开发的是IM产品,需要实现自定义用户头像的功能。

    但Bolt中对图像的默认拉伸锯齿效果非常明显,所以自己实现了图像拉伸函数,代码已共享,具体可查看:《迅雷Bolt图像拉伸不清晰的解决办法》。

    不过在这个函数的使用中,遇到了使用ClipSubBindBitmap裁切后再拉伸,图像不显示的Bug,示例代码:

    hCutBitmap虽然不为空,但却不显示,后来跟龙哥(幻灰龙)沟通,注意到Bitmap类的ClipSubBindBitmap函数的说明:

    ClipSubBindBitmap返回的Bitmap是子对象,与原Bitmap共享数据,也就是说裁切出来Bitmap并不是真正意义上的图像,所以导致后续的拉伸Bug。

    解决的办法也非常简单,就是调用Clone函数,创建一个真正意义上的Bitmap。

    大家在使用ClipSubBindBitmap后,如果需要对图像进行其他处理,可以先Clone一个。

    另外在沟通中,关于对象引用计数的官方解释中有错误:http://xldoc.xl7.xunlei.com/0000000018/00000000180001000010.html

    CheckXXX没有增加引用计数,只是把对象从Lua栈里取出来。


    分享,是一种天生的冲动!

  • 相关阅读:
    js交互数据
    js字符串操作
    js数组操作
    hasattr ,setarrt, getattr属性
    装饰器
    redis数据库安装
    ubuntu中mysql数据库安装与删除
    装换器
    jinjia2
    Laravel框架与ThinkPHP框架的不同
  • 原文地址:https://www.cnblogs.com/ym123/p/4174739.html
Copyright © 2011-2022 走看看