6

有谁知道 Android 使用的 Skia 绘图库的良好文档?

主 Canvas 对象几乎没有任何状态,所以我特别考虑可以嵌入到 Paint 对象中的对象。我已经通过反复试验研究了如何使用一些 ColorFilters 并使用 ColorMatrixColorFilter 制作了很酷的效果。现在我也有了我想要的 LinearGradient 着色器的阴影。我想我了解 PathEffects 并对 XferModes 有一些想法。MaskFilters 和 Rasterizers 对我来说仍然完全不透明。但是反复试验并不是理解复杂库的好方法。

大多数情况下,我担心 Android 文档根本没有讨论 2d 图形和使用它们的方法。甚至类 javadocs 也经常不解释该类在做什么。实际功能都在 Skia C 代码中,我可以得到,但它也缺少文档。我看过一些很酷的演示,但谷歌几乎没有解释它们是如何完成的。

理解这些东西的唯一方法是实验和阅读 C 代码吗?效率和最佳实践如何?Davlik/Android VM 对内存分配很敏感,有时速度很慢,我担心我没有以最好的方式做事。

4

2 回答 2

2

Skia 有自己的 google 代码项目站点,您可以在其中找到一些高级概述。

可以通过项目站点中的此链接浏览内联文档

http://skia.googlecode.com/svn/trunk/docs/html/hierarchy.html

你可以加入讨论邮件列表。设计师和社区将回答问题。

另一个很好的参考来自苹果公司。Apple QuickDraw GX 文档解释了很多 2D 矢量图形概念,可以很好地应用于 Skia。

于 2010-05-19T14:24:39.200 回答
1

Android canvas API 确实有两个不同的实现,一个是 Skia,另一个是 OpenGL ES。后面的实现是所谓的 HWUI。

无论实现如何,了解绘制过程底层的管道对于了解如何使用画布 API 至关重要。

以下是迄今为止描述管道的最佳文档。你一定会发现它很有用。

http://www.xenomachina.com/2011/05/androids-2d-canvas-rendering-pipeline.html

于 2013-04-14T02:48:46.993 回答