Html2canvas: 带角度 (0deg) 的线性渐变不渲染

创建于 2013-03-11  ·  8评论  ·  资料来源: niklasvh/html2canvas

你好 !

首先,这里有不错的插件! 我只需要这样的东西;)

我只是有一个关于梯度的问题。

当用一个词 (Top, Left, ...) 指定角度时会渲染渐变,但当我在度数中放置一个角度时不会渲染渐变(例如:linear-gradient(0deg, rgb(0, 0, 0) 0% , rgb(255, 255, 255) 100%) 不起作用)。

有没有办法解决这个问题 ? 因为我使用了很多带有度数值的渐变:)

谢谢 !

所有8条评论

谢谢(你的)信息。

有一种方法可以解决它,但我目前没有时间。 我会将它添加到待办事项中,并在我有时间的时候再回来。

可能,所有渐变都不起作用。
我们使用与 0-deg 不同的符号:linear-gradient(to bottom, color, color);

这个@niklasvh是否有任何更新,我面临同样的问题。

+1 以解决此问题。 @niklasvh你能给我们一个尝试解决这个问题的线索吗?

对此有一个简单的解决方法,只需在 LinearGradientContainer 中存在位置开关之前添加此if

if (imageData.args[0].indexOf('deg') != -1) {
  var rad = parseFloat(imageData.args[0].substr(0, imageData.args[0].length - 3)) * (Math.PI / 180);
  //Finds y start and scales it between 0 and 1
  this.y0 = (Math.cos(rad) + 1) / 2;
  //Flips y1
  this.y1 = 1 - this.y0;
  //Same as for y0 but flip axis to match with css gradient
  this.x0 = (-Math.sin(rad) + 1) / 2;
  this.x1 = 1 - this.x0;
} else {
  imageData.args[0].split(" ").reverse().forEach(function(position) {
     switch (position) {
          ........
     }
}

@NicolayThafvelin欢迎提出请求... :]

@NicolayThafvelin 3q

在 1.0.0 中修复

此页面是否有帮助?
0 / 5 - 0 等级

相关问题

btm1 picture btm1  ·  22评论

trongdau184 picture trongdau184  ·  64评论

gitbala picture gitbala  ·  43评论

hanc1208 picture hanc1208  ·  23评论

cjcortez picture cjcortez  ·  23评论