Вы можете измерить текст, чтобы получить ширину предложения следующим образом:
ctx.measureText('I am a sentence').width
Вы можете сделать это, потому что вы устанавливаете шрифт для контекста напрямую, чтобы соответствовать любому тексту в стиле CSS в вашем HTML, которыйВы пытаетесь действительно измерить.
ctx.font = '24px MyFont';
Но что, если я хочу применить whitespace: pre
к тексту? Кажется, я получаю странные результаты, которые не соответствуют.
То, что я пытаюсь сделать, - это просто вычислить слова, которые могут поместиться в одной строке. Вот и все. Но иногда то, что я измеряю, меньше того, что визуализируется, поэтому я начинаю подозревать, что метод измерения холста на самом деле не является точным инструментом.
Как точно измерить ширину предложения с учетомвсе функции стиля, такие как letter-spacing
, whitespace: pre
и т. д .?