Canvas 当我使用画布图案作为点背景色时,图像看起来很模糊
预期行为 在所有屏幕分辨率下,图像应该看起来很好,没有模糊。它在PC分辨率上看起来不错 当前行为 图像在移动分辨率下看起来模糊 这是我的代码 HTML CodepenCanvas 当我使用画布图案作为点背景色时,图像看起来很模糊,canvas,html5-canvas,chart.js,chartjs-2.6.0,devicepixelratio,Canvas,Html5 Canvas,Chart.js,Chartjs 2.6.0,Devicepixelratio,预期行为 在所有屏幕分辨率下,图像应该看起来很好,没有模糊。它在PC分辨率上看起来不错 当前行为 图像在移动分辨率下看起来模糊 这是我的代码 HTML Codepen 我认为它与 DeVeleXeleRe>有关,但我不知道如何在画布上绘制图像时考虑它。 <script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.7.3/Chart.js"></script> <canvas id="myChart
我认为它与<强> DeVeleXeleRe><强>有关,但我不知道如何在画布上绘制图像时考虑它。
<script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.7.3/Chart.js"></script>
<canvas id="myChart"></canvas>
var img = new Image();
img.src = "https://techvalor.net/images/avatars/generator/175_1536055288.png";
img.onload = function() {
var canvas = document.getElementById("myChart");
var tempCanvas = document.createElement("canvas");
var tCtx = tempCanvas.getContext("2d");
var size = 40;
tempCanvas.width = size;
tempCanvas.height = size;
tCtx.drawImage(img, 0, 0, img.width, img.height, -size / 2, -size / 2, size, size);
tCtx.drawImage(img, 0, 0, img.width, img.height, size / 2, -size / 2, size, size);
tCtx.drawImage(img, 0, 0, img.width, img.height, -size / 2, size / 2, size, size);
tCtx.drawImage(img, 0, 0, img.width, img.height, size / 2, size / 2, size, size);
var ctx = canvas.getContext("2d");
var fillStyle = ctx.createPattern(tempCanvas, "repeat");
var chart = new Chart(ctx, {
type: "line",
data: {
labels: ["Item 1", "Item 2", "Item 3", "Item 4"],
datasets: [
{
data: [5, 20, 35, 45],
pointBackgroundColor: fillStyle,
pointRadius: 20,
pointBorderColor: "rgb(0,0,0)"
}
]
},
options: {
hover: { mode: null },
tooltips: { enabled: false }
}
});
};