我需要使用
javascript将纯文本转换为RTF(RichText格式).
我正在寻找每个转换的功能,我不打算使用库.
从普通转换为RTF
格式化样式和颜色并不重要,重要的是我将纯文本转换为有效的RTF格式
从RTF转换为plain
再次,风格并不重要.它们可以完成删除.只需要保留所有文本数据(不丢失输入的数据)
解决方法
我
found a c# answer here这是一个很好的起点,但我需要一个Javascript解决方案.
不能保证这些是100%可靠的,但它们似乎与我测试过的数据一起使用.
function convertToRtf(plain) { plain = plain.replace(/\n/g,"\\par\n"); return "{\\rtf1\\ansi\\ansicpg1252\\deff0\\deflang2057{\\fonttbl{\\f0\\fnil\\fcharset0 Microsoft Sans Serif;}}\n\\viewkind4\\uc1\\pard\\f0\\fs17 " + plain + "\\par\n}"; } function convertToPlain(rtf) { rtf = rtf.replace(/\\par[d]?/g,""); return rtf.replace(/\{\*?\\[^{}]+}|[{}]|\\\n?[A-Za-z]+\n?(?:-?\d+)?[ ]?/g,"").trim(); }
其中Here is a working example都在行动中