Làm cách nào để vẽ hình chữ nhật có hiệu ứng tô màu như hình ảnh bên dưới bằng phần tử canvas HTML5?Gradient hình chữ nhật với phần tử Canvas HTML5
Chỉnh sửa: Cảm ơn mọi phản hồi. Có, tôi đã thử nhiều phương pháp. Ví dụ: tôi có thể sử dụng phương thức createRadialGradient
như @Loktar đề xuất không? Dưới đây là một số mẫu mã:
<html>
<head>
<title>test</title>
<script type="application/x-javascript">
function draw() {
var canvas = document.getElementById("canvas"),
ctx = canvas.getContext("2d");
var grad1 = ctx.createRadialGradient(50, 50, 0, 50, 50, 50);
grad1.addColorStop(0, 'rgba(255, 252, 0, 1)');
grad1.addColorStop(1, 'rgba(68, 205, 37, 1)');
ctx.fillStyle = grad1;
ctx.fillRect(0, 0, 100, 100);
}
</script>
</head>
<body onload="draw();">
<div>
<canvas id="canvas" width="100" height="100"></canvas>
</div>
</body>
</html>
Nhưng kết quả không phải là khá những gì tôi muốn:
này nên được thực hiện một cách dễ dàng với một phương pháp như PathGradientBrush
cung cấp bởi GDI +. Tôi không chắc chắn là có thể với phần tử canvas HTML5.
Bạn đã thử gì cho đến nay? p.s. https://developer.mozilla.org/en/Canvas_tutorial%3aApplying_styles_and_colors 5 phút và bạn sẽ có thể làm được! – stecb
heh idk khoảng 5 phút. Heres nỗ lực khủng khiếp của tôi, thậm chí sẽ không đăng nó như là câu trả lời http://jsfiddle.net/loktar/MAjPQ/1/ – Loktar
obv '5 phút' có nghĩa là nó dễ dàng để đọc tài liệu đó và cố gắng để có được một giải pháp dễ dàng :) – stecb