gpt4 book ai didi

Android Canvas 硬件加速

转载 作者:搜寻专家 更新时间:2023-11-01 08:03:07 24 4
gpt4 key购买 nike

在链接上

Hardware accleration

我发现 Canvas 现在支持硬件加速(大部分)。

我下载了 4.2.2 AOSP(API Level 17) 源码并检查了 external/skia/src/core/sKCanvas.cpp 中的代码

我找到了 sKCanvas.cpp,因为它最终会通过 Android Canvas 类中的 jni 调用。

但是,比如说drawPosText(),这个函数应该使用硬件加速(open gl)

在代码中。但是当我在 sKCanvas.cpp 中检查这个函数时,我没有看到任何与 open gl 相关的代码。

我是不是误会了什么?这确实让我感到困惑。

谢谢。

void SkCanvas::drawPosText(const void* text, size_t byteLength,
const SkPoint pos[], const SkPaint& paint) {
LOOPER_BEGIN(paint, SkDrawFilter::kText_Type)

while (iter.next()) {
SkDeviceFilteredPaint dfp(iter.fDevice, looper.paint());
iter.fDevice->drawPosText(iter, text, byteLength, &pos->fX, 0, 2,
dfp.paint());
}

LOOPER_END

最佳答案

您正在查看软件实现。硬件实现在frameworks/base/libs/hwuiframeworks/base/core/java/android/view/(见HardwareRenderer.javaHardwareCanvas.javaGLES20Canvas.java等)

关于Android Canvas 硬件加速,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18219513/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com