javascript – 将RTF转换为纯文本和从纯文本转换

我需要使用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都在行动中

转载注明原文:javascript – 将RTF转换为纯文本和从纯文本转换 - 代码日志