我正在使用ExtJS 4.2构建一个web应用程序。在web应用程序中,有一个部分可以让我在一个类似LCD的屏幕上显示某些信息。
我使用textarea
实现了这一点,我使用⬛和⬜组装了一个屏幕显示。我将字体大小设置为1px,将文本区域的宽度设置为240像素。但事实证明,最后10-20个像素将被转移到下一行。当我在Windows和Android平板电脑上查看页面时,这一点很明显。
以下是在Mac上查看的示例输出,其中240个像素连续显示:
以下是在Android平板电脑上查看的相同示例输出:
很明显,最后几个像素被撞到了下一行,显示器就被毁了。
很明显,即使我们将文本区域的宽度设置为240像素,它也无法容纳240个1像素字符。
我们还尝试将letter-spacing
设置为-1px。由于字符大小为1px,我们预计不会显示,如在Mac上查看时的屏幕截图所示:
然而,当我们从Android平板电脑上查看时,我们看到的是一个切片显示:
这意味着1px的字体宽度实际上比它的实际宽度要大。
有人知道如何使用JavaScript/HTML5制作像素完美的类似LCD的显示器吗?
发布于 2018-03-06 19:53:17
你可以使用Ext.draw.*包,特别是像rect和path这样的精灵包。
底层技术是SVG,所以你可能想谷歌一下"LCD SVG“等
指南:https://docs.sencha.com/extjs/4.2.6/#!/guide/drawing
示例:
https://docs.sencha.com/extjs/4.2.6/#!/example/draw/Rotate Text.html
https://stackoverflow.com/questions/48827512
复制相似问题