Tôi đã chơi với phần tử canvas và phát hiện ra rằng khi tôi cố gắng vẽ các ô màu đồng nhất NxN bên cạnh nhau, trong một số cấu hình chiều rộng/chiều cao, có các đường màu trắng mờ giữa chúng. Ví dụ:Weird HTML 5 Canvas Antialiasing
Ví dụ: canvas này có màu đen nhưng chứa một số loại lưới mà tôi phỏng đoán là kết quả của việc chống răng cưa bị lỗi trong trình duyệt.
đủ để nói, lỗi này chỉ xuất hiện trong một số cấu hình nhưng tôi muốn để thoát khỏi nó cho tốt. Có cách nào để phá vỡ điều này không? Bạn đã từng gặp vấn đề với khử răng cưa trong canvas chưa?
Tôi đã thực hiện this fiddle minh họa sự cố và cho phép bạn chơi với kích thước của canvas và số ô. Nó cũng chứa mã tôi sử dụng để vẽ các ô, để bạn có thể kiểm tra nó và cho tôi biết nếu tôi làm gì sai.
var ctx = canvas.getContext('2d');
ctx.clearRect(0, 0, canvasWidth, canvasHeight);
for (var i = 0; i < numberOfCells; ++i) {
for (var j = 0; j < numberOfCells; ++j) {
ctx.fillStyle = '#000';
ctx.fillRect(j * cellWidth, i * cellHeight, cellWidth, cellHeight);
}
}
Cảm ơn trước,
Petr.
Xin chào Petr, nó sẽ có vẻ bạn quên cung cấp liên kết fiddle của bạn, bạn có thể vui lòng cập nhật – Canvas
Chỉ cần nhận thấy nó. Xin lỗi, ở đây bạn đi! :) –
Một thủ thuật phổ biến là chuyển đổi toàn bộ khung hình bằng một pixel ngay từ đầu để tránh điều này, tôi tin. –