- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
使用GraphicsGradient创建的渐变似乎总是产生粉红色,没有实际的渐变。我已经从StageXL /example/example06/example06.dart复制了代码,将TransitionFunction更改为Transition。我还对舞台做了些微修改以适合我的计划,并以不同的颜色玩耍。
我正在使用的代码是这样的:
import 'dart:html' as html;
import 'package:stagexl/stagexl.dart';
void main()
{
//------------------------------------------------------------------
// Initialize the Display List
//------------------------------------------------------------------
Stage stage = new Stage(html.querySelector('#stage'),width: 800, height: 800);
RenderLoop renderLoop = new RenderLoop();
renderLoop.addStage(stage);
//------------------------------------------------------------------
// Draw a cloud with vectors
//------------------------------------------------------------------
var gradient = new GraphicsGradient.linear(230, 0, 370, 200);
gradient.addColorStop(0, Color.LightBlue);
gradient.addColorStop(1, Color.DarkBlue);
Sprite sprite = new Sprite();
sprite.useHandCursor = true;
stage.addChild(sprite);
Shape shape = new Shape();
shape.pivotX = 278;
shape.pivotY = 90;
shape.x = 400;
shape.y = 300;
sprite.addChild(shape);
shape.graphics
..beginPath()
..moveTo(170, 80)
..bezierCurveTo(130, 100, 130, 150, 230, 150)
..bezierCurveTo(250, 180, 320, 180, 340, 150)
..bezierCurveTo(420, 150, 420, 120, 390, 100)
..bezierCurveTo(430, 40, 370, 30, 340, 50)
..bezierCurveTo(320, 5, 250, 20, 250, 50)
..bezierCurveTo(200, 5, 150, 20, 170, 80)
..closePath()
..fillGradient(gradient)
..strokeColor(Color.Blue, 5);
//------------------------------------------------------------------
// Add some animation
//------------------------------------------------------------------
Tween tween1 = new Tween(shape, 3.0, Transition.easeInOutBack)
..animate.scaleX.to(2.5)
..animate.scaleY.to(2.5)
..delay = 1.0;
Tween tween2 = new Tween(shape, 3.0, Transition.easeInOutBack)
..animate.scaleX.to(1.0)
..animate.scaleY.to(1.0)
..delay = 5.0;
renderLoop.juggler.add(tween1);
renderLoop.juggler.add(tween2);
}
最佳答案
不幸的是,这是当前StageXL版本中WebGL渲染器的限制。描边和填充仅支持纯色。仅Canvas2D渲染器支持图形渐变和图案。您还可以在显示对象上使用applyCache方法,该方法将使用Canvas2D渲染一个临时纹理,该纹理还将通过WebGL渲染器显示正确的结果。
您可以像这样配置渲染器(在创建Stage实例之前执行此操作):
// to use the WebGL renderer (default)
StageXL.stageOptions.renderEngine = RenderEngine.WebGL;
// to use the Canvas2D renderer
StageXL.stageOptions.renderEngine = RenderEngine.Canvas2D;
关于dart - StageXL GraphicsGradient,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37066902/
使用GraphicsGradient创建的渐变似乎总是产生粉红色,没有实际的渐变。我已经从StageXL /example/example06/example06.dart复制了代码,将Transit
我试图设置一个任意颜色选择器来获取要传递给 Graphics.fillColor() 的值。 该方法的签名是“动态填充颜色(int color)”,因此颜色似乎不是 RGB/RGBA,而是某个整数。
我正在尝试在 Canvas 上创建一个使用 Dart 和 StageXL 对 MouseClick 事件使用react的框。我的代码如下: import 'dart:html' as html;
当我使用 StageXL 时,我收到此警告: Element 'MouseEvent' from SDK library 'html_dartium.dart' is implicitly hidde
是否可以为两个重叠的 Sprite 调用鼠标事件?我尝试使用 getObjectsUnderPoint但是它似乎不起作用。 class Line extends Sprite { int x;
我对 StageXL 和 Dart 都比较陌生,而且我很难通过鼠标点击来改变 Sprite 的颜色。目前我只是引用 Sprite 并调用图形 fillColor() 方法但是没有任何改变。关于如何通过
我是一名优秀的程序员,十分优秀!