我在HTML5画布中使用fillText();
绘制了一段文本。如何使其可编辑,并将值读入变量?由于文本将被写入某些复杂的多边形形状中,因此文本必须位于画布内。
我在HTML5画布中使用fillText();
绘制了一段文本。如何使其可编辑,并将值读入变量?由于文本将被写入某些复杂的多边形形状中,因此文本必须位于画布内。
在Canvas中无法获取文本。您需要做的是,在使用 fillText();
并呈现Canvas之前,将文本保存在变量中。当您想要编辑Canvas中的文本时,必须重新绘制Canvas,并在想要使用 fillText();
渲染编辑后的文本时再次从变量中读取文本。
请看Zebra。它是一组小部件,可以在HTML画布上呈现,其中一个小部件是文本编辑器。看起来这是免费的,开源的,除了提供js文件的链接外,他们还在GitHub上提供了Git存档。http://www.zebkit.org/
一旦文本被绘制到画布上,它就变成了像素。原始文本(和多边形轮廓)将不会被存储。你无法从画布中获取它,就像你无法从jpg
或png
文件中获取它一样。
如果画布是由你的JavaScript绘制的,你可以将文本存储在其他地方。如果不是,你必须使用OCR技术来识别它。