1

是否可以明确解释以下代码的作用,而不是仅显示无意义的参考。

请注意,这段代码取自 dart:html 包 (html_dartium.dart),其中定义了类 CanvasRenderingContext2D。

/// @domName CanvasRenderingContext2D
class CanvasRenderingContext2D extends CanvasRenderingContext {
  CanvasRenderingContext2D.internal(): super.internal();


  /** @domName CanvasRenderingContext2D.fillStyle */
  dynamic get fillStyle native "CanvasRenderingContext2D_fillStyle_Getter";

  ...
4

1 回答 1

1

使用fillStyle getter代码native。因此那里的代码有点神秘。要了解有关 Dart 中本机代码的更多信息,我会推荐这篇文章:

http://www.dartlang.org/articles/native-extensions-for-standalone-dart-vm/

这是一段摘录:

The Dart library defines classes and top-level functions as usual, but declares that
some of these functions are implemented in native code, using the native keyword. The
native library is a shared library, written in C or C++, that contains the 
implementations of those functions.

Dart 没有更改Canvasapi,因此您可以阅读该 api 并很好地了解代码在做什么。这是一个很好的起点:

https://developer.mozilla.org/en-US/docs/HTML/Canvas/Drawing_Graphics_with_Canvas

如果您对缺乏明确的文档有更普遍的抱怨(尤其是在native使用代码的地方),您总是可以提交错误。

于 2013-01-06T19:11:01.073 回答