Android: 照片编辑器的图层渲染用什么?

Android: What to use for rendering the layers of photo-editor?

朋友们大家好! 我需要创建一个照片编辑器,可以在图片上添加表情、文字和画笔。

Open the illustration

编辑器必须能够用两根手指(多点触控)更改笑脸和文字的位置、大小和旋转。

力学对我来说很清楚。我发现多控制器的现成实现: https://github.com/lukehutch/android-multitouch-controller

但我不明白如何更好地可视化所有层的性能:

Layer 3 - text
Layer 2 - emoticons
Layer 1 - drawing
Layer 0 - photo

我不敢使用 canvas,没有你的意见。我听说在显示大量图片时 canvas 有问题。

我发现示例使用带有 的图层列表来可视化图像的图层。我认为这种方法会为我的任务带来更多的性能数字。 但是我没有找到关于如何在移动项目时更新位置(顶部/左侧)的文档。

我的问题是:所有层的可视化和保存最终图像(合并所有层)的可能性的最佳用途是什么?

请大家帮忙,选择什么,什么是正确的道路! 先感谢您! :)

Canvas 不是马车。这是您将内容渲染到 Bitmap 上的唯一方法。根据您的要求,我认为您需要将 Layers 绘制到不同的位图上。 Layer 0 将是您的默认位图。其他每一层都是独立的位图。它们必须位于自己的位图上的原因是您可以随意移动它们。

您最终的合并将是通过 Canvas.drawBitmap() 调用在默认位图上绘制所有这些位图。