我正在使用Three JS开发一个3d图形.我想将图表的单位显示为THREE.SPRITE.为了创建SPRITE,我首先创建了一个canvas元素并向其添加了文本.然后我THREE.Texture用之前创建的canvas元素创建了.创建THREE.SpriteMaterial与所述纹理作为地图,然后创建THREE.SPRITE使用此sprite材料.将此精灵素材添加到场景中.当渲染器是THREE.WebGLRenderer文本大小的实例非常小时,当渲染器是实例时THREE.CanvasRenderer,文本的大小非常大.
以下是我用来创建Sprite的代码.
var canvas = document.createElement('canvas'),
context = canvas.getContext('2d'),
metrics = null,
textHeight = 100,
textWidth = 0,
actualFontSize = 20;
context.font = "normal " + textHeight + "px Arial";
metrics = context.measureText("Sample Text");
var textWidth = metrics.width;
canvas.width = textWidth;
canvas.height = textHeight;
context.font = "normal " + textHeight + "px Arial";
context.textAlign = "center";
context.textBaseline = "middle";
context.fillStyle = "#ff0000";
context.fillText("Sample Text", textWidth …Run Code Online (Sandbox Code Playgroud) 我正在尝试编写一些可以检测表单字段中输入的东西,但我希望它不仅在按键时被触发,而且如果用户还按住多个重复字符的键,或者他们也想要将某些内容复制并粘贴到输入字段中。
我试过使用keyupevent 但这不能满足我的所有要求,而且changeevent 似乎也不适合。请任何人都可以建议一个可能更合适的活动吗?
谢谢你。