Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/458.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 有没有一种方法可以通过html5画布';填充文本方法?_Javascript_Html_Text - Fatal编程技术网

Javascript 有没有一种方法可以通过html5画布';填充文本方法?

Javascript 有没有一种方法可以通过html5画布';填充文本方法?,javascript,html,text,Javascript,Html,Text,我正在制作一个HTML5游戏,我需要一种方式来通过文本方式告知玩家有关的事情。我想使用fillText方法将文本放入此框中: 现在,我只知道如何在一行中呈现文本,但这显然是不够的,因为需要有换行符才能适合文本。有没有办法快速完成这项工作,或者我必须自己编写代码 这是邮件在我看来的样子: 看看画布,如果只想使用画布,就必须自己动手 为此,您需要使用measureText来获取文本的大小并手动将其打断。但这似乎很麻烦 我发现另一个更优雅的解决方案是使用HTML覆盖。用于此的HTML可能如下所示:

我正在制作一个HTML5游戏,我需要一种方式来通过文本方式告知玩家有关的事情。我想使用fillText方法将文本放入此框中:

现在,我只知道如何在一行中呈现文本,但这显然是不够的,因为需要有换行符才能适合文本。有没有办法快速完成这项工作,或者我必须自己编写代码

这是邮件在我看来的样子:

看看画布,如果只想使用画布,就必须自己动手

为此,您需要使用
measureText
来获取文本的大小并手动将其打断。但这似乎很麻烦

我发现另一个更优雅的解决方案是使用HTML覆盖。用于此的HTML可能如下所示:

<div id="outer" syle="position:relative">
   <canvas id='myCanvas'/>
   <div id="textualDiv" syle="position:absolute"></div>
</div>


然后根据需要定位
textualDiv
,并在需要时填充。然后你就把它藏起来。并在需要时再次显示。

我同意@Py solution。如果文本的内容和大小都非常动态,我建议您使用DIV覆盖方法<如果事先知道要绘制的所有消息,则代码>填充文本()是合适的。