Javascript文本输入编辑:如何将一个文本输入中的多个字符串文本着色器转换为另一种表示

Javascript text input editing: How to turn multiple string text shader in one text input into another representation?

本文关键字:文本 输入 字符串 转换 表示 另一种 编辑 一个 Javascript      更新时间:2023-09-26

所以我想要两个输入字段,一个可编辑。我需要一些脚本来打开这样的着色器文本输入:

    #ifdef GL_ES
    precision highp float;
    #endif
    varying vec4 v_color;
    void main (void)
    {
      gl_FragColor = v_color; 
    }

转换为这样的输出:

    "#ifdef GL_ES'n"
    "precision highp float;'n"
    "#endif'n"
    "'n"
    "varying vec4 v_color;'n"
    "'n"
    "void main (void)'n"
    "{'n"
    "    gl_FragColor = v_color;    'n"
    "}"

(此类输出可以转换为openGL着色器静态字符*)

那么,如何用Javascript创建这样一个简单的工具呢?

尝试正则表达式。

html:

<textarea id="text1">#ifdef GL_ES
precision highp float;
#endif
varying vec4 v_color;
void main (void)
{
gl_FragColor = v_color;
}
</textarea>
<textarea id="text2"></textarea>

javascript:

var text = document.getElementById("text1").value;
text = text.replace(/'n/g, "''n'"'n'"");
document.getElementById("text2").value = "'""+text+"''n'"";

http://jsfiddle.net/t9sgA/1/