相关疑难解决方法(0)

RGB到十六进制,十六进制到RGB

如何将RGB格式的颜色转换为Hex格式,反之亦然?

例如,转换'#0080C0'(0, 128, 192).

javascript rgb hex colors

498
推荐指数
18
解决办法
42万
查看次数

在画布上绘制10,000个对象javascript

我需要在画布上绘制超过10,000张图像(32x32像素),但超过2000画的表现非常糟糕.

这是一个小例子:

对象结构 {position:0}

for(var nObject = 0; nObject < objects.length; nObject++){
    ctx.save();
    ctx.translate(coords.x,coords.y);
    ctx.rotate(objects[nObject].position/100);
    ctx.translate(radio,0);
    ctx.drawImage(img,0,0);
    ctx.restore();
    objects[nObject].position++;
}
Run Code Online (Sandbox Code Playgroud)

使用这段代码我可以对坐标周围的图像进行扫描.

您建议什么来提高性能?

更新:

我尝试分层,但表现恶化

http://jsfiddle.net/72nCX/3/

javascript performance html5 canvas drawimage

17
推荐指数
1
解决办法
7954
查看次数

绘制画布后淡出线条?

好吧,我正在绘制一个画布对象上的描边线,这项工作正常我想要做的就是删除线条或在一段时间之后淡出它们我一直在阅读关于保存状态和刷新但我可以'似乎让它工作我还尝试将画布上下文存储到一个数组中并在它超过一定长度时拼接其中的项目但又一次没有运气......这是我的代码(这是巨大的所以我'设立了一个plunkr):

`var app = angular.module('plunker', []);

app.controller('MainCtrl', function($scope) {
     $scope.canvas = $('#spiro')[0];
    $scope.canvascanvasContext =  $scope.canvas.getContext("2d");
    //interval
    $scope.timerId = 0;

    console.log($scope.canvas);
//MOUSE OVER
/*
$scope.getMousePos = function getMousePos(evt) {
    var rect = $scope.canvas.getBoundingClientRect();

      $scope.mouseX = evt.clientX - rect.left;
      $scope.mouseY = evt.clientY - rect.top;
      $scope.canvascanvasContext.fillStyle = "rgb("+$scope.red+", "+$scope.green+", "+$scope.blue+")";
      $scope.canvascanvasContext.fillRect($scope.mouseX, $scope.mouseY, 4, 4);


    console.log(evt.clientX);
}
  */
  $scope.clearit = function clearit(){
    // Store the current transformation matrix
  //  $scope.canvascanvasContext.save();

    // Use the identity matrix while clearing the canvas
    $scope.canvascanvasContext.setTransform(1, 0, 0, …
Run Code Online (Sandbox Code Playgroud)

javascript html5 canvas angularjs

2
推荐指数
1
解决办法
5085
查看次数

标签 统计

javascript ×3

canvas ×2

html5 ×2

angularjs ×1

colors ×1

drawimage ×1

hex ×1

performance ×1

rgb ×1