У меня есть холст, в котором я хочу нарисовать несколько прямоугольников (разных размеров). Эти прямоугольники должны быть заполнены или опорожнены с течением времени, будь то автоматически или путем ввода пользователем.Частичное заполнение прямоугольника в HTML5
Проблема в том, что я никогда не программировал HTML5 раньше и не знаю, как частично заполнить прямоугольник или увеличить заливку (через что-то вроде rectangle.backgroundHeight ++).
Вот мой код:
<canvas id="myCanvas" height="1000" width="1000" />
<script>
window.addEventListener('load', function() {
var ctx = document.getElementById('myCanvas').getContext('2d');
var interval = setInterval(function() {
return function() {
// Draw large fuel tanks
var fuelA = ctx.rect(150, 60, 110, 130);
var fuelB = ctx.rect(600, 60, 110, 130);
// Draw small fuel tanks
var fuelC = ctx.rect(40, 300, 60, 130);
var fuelD = ctx.rect(300, 300, 60, 130);
var fuelE = ctx.rect(500, 300, 60, 130);
var fuelF = ctx.rect(750, 300, 60, 130);
ctx.stroke();
};
}(), 1000/25);
}, false);
для заполнения: http://www.html5canvastutorials.com/tutorials/html5-canvas-linear-gradients/ и для частичного заполнения. Я не знаю, но, возможно, вы можете использовать градиенты, см. http://www.html5canvastutorials.com/tutorials/html5-canvas-linear-gradients/ .. Попробуйте изменить объявление var var' на ' var grd = context.createLinearGradient (250, 250, canvas.width, canvas.height); '(Обратите внимание на cange в 1-м 2 аргументах) – Playmaker