【问题标题】:What is the difference among RGBA_8888, TRANSPARENT, TRANSLUCENT in Android PixelFormat?Android PixelFormat中的RGBA_8888、TRANSPARENT、TRANSLUCENT有什么区别?
【发布时间】:2018-01-14 20:47:56
【问题描述】:

在android api 文档中,我只得到关于TRANSPARENT 和TRANSLUCENT 的语句,并没有关于RGBA_8888 的内容,所以我完全被他们弄糊涂了。

TRANSLUCENT:系统选择支持半透明的格式(许多 alpha 位) 透明:系统选择支持透明的格式(至少 1 个 alpha 位)

当我使用这 3 种格式时,有什么实际区别(实际上我在视图上使用函数 setFormat() 时我无法弄清楚有什么区别)?

【问题讨论】:

    标签: android pixel transparent rgba pixelformat


    【解决方案1】:

    RGBA_8888 是一种实际格式。每个像素为 4 字节,有 8 位红、绿、蓝、透明度信息。

    另外两个用于指定要使用的格式类型,但不是实际格式。透明意味着必须至少有 1 个 alpha 位,但是无论选择什么格式都不需要支持完全混合——它只需要能够透明或不透明。例如,JPEG 具有透明度。半透明意味着它可以是部分透明的,并且应该应用 alpha 混合。 RGBA_8888 是半透明的,alpha 通道描述了如何将其混合。半透明是透明度的超集。

    【讨论】:

    • 那么,实际格式和非实际格式有什么区别。
    • 一种格式描述了一组字节序列来描述每个像素。几个函数使用非格式来选择格式,它用于描述格式。你需要一个实际的格式来绘制。
    • 你知道android在使用非格式时如何选择实际格式的机制是什么吗?
    猜你喜欢
    • 2022-12-02
    • 1970-01-01
    • 2011-05-05
    • 2015-11-12
    • 2015-11-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多