Мне нужно нарисовать текстовую строку в точном месте на холсте HTML5.Текстовое положение на холсте отличается от FireFox и Chrome
<!DOCTYPE html>
<html>
<body>
<canvas id="mainCanvas" width="320" height="240" style = "border:1px solid #d3d3d3;">
Your browser does not support the HTML5 canvas tag.
</canvas>
<script>
window.onload = function() {
var canvas = document.getElementById("mainCanvas");
var ctx = canvas.getContext("2d");
ctx.textBaseline = "top";
ctx.font = '100px Arial';
ctx.textAlign = 'left';
ctx.fillStyle = 'rgba(0, 0, 0, 255)';
ctx.fillText('Test', 0, 0);
}
</script>
</body>
</html>
Маржа на вершине отличается в Chrome и Firefox:
я собираюсь рисовать другие элементы (например, изображения, формы) на холсте, и Мне нужно убедиться, что текст отображается в одной позиции во всех браузерах. Является ли это возможным?
вероятно, проблема связана с текстом размера, когда я изменил это будет работать нормально, хотя я попытался с помощью ниже, и он отлично работает со мной. ctx.font = «50px Verdana»; ctx.fillStyle = 'rgba (0, 0, 0, 255)'; ctx.fillText («Тест», 10, 50); – cracker
@cracker Я попытался изменить шрифт, как вы предложили, и положение текста относительно верхней части холста все еще отличается в Chrome и Firefox – Lev
Я пробовал использовать ctx.textBaseline = "alphabetic"; ctx.fillText ('Test', 10, 100); где вам нужно вручную установить параметры. это может помочь вам! – cracker