chrome不支持应用程序/ rtf类型

时间:2019-02-03 06:06:36

标签: html angular rtf

我需要在rtf中显示HTML文件。我正在使用对象标记将文件嵌入html。

当我使用以下代码时,表明不支持该插件。有什么方法可以在我的rtf

中显示HTML类型的文档
<object data="assets/display.rtf" type="application/rtf"></object>

注意:我可以用相同的方法显示PDF文件

1 个答案:

答案 0 :(得分:0)

尝试了很多之后发现了一些东西。

首先,我从此链接下载了 rtf.js rtf.js。然后通过这个链接。 getting started with rtf.js。 (下载整个dist文件夹并将其放入您的html文件夹。dist文件夹不包含jquery min js plz下载它,并将所有脚本文件包含在html中)。下面是我修改的代码。 (整个rtf将转换为对象)。连同以下代码,请包括rtf.js给出的默认代码(请确保您的rtf文件格式正确。)

const rtf = 
`{\\rtf1\\ansi\\ansicpg1252\\deff0\\deflang1033{\\fonttbl{\\f0\\fnil\\fcharset0 Calibri;}}
{\\*\\generator Msftedit 5.41.21.2510;}\\viewkind4\\uc1\\pard\\sa200\\sl276\\slmult1\\lang9\\f0\\fs22 This \\fs44 is \\fs22 a \\b simple \\ul one \\i paragraph \\ulnone\\b0 document\\i0 .\\par

{\\colortbl;\\red0\\green0\\blue0;\\red255\\green0\\blue0;}
This line is the default color\\line
\\cf2
This line is red\\line
\\cf1
This line is the default color
}
}`;




<div id="display">

</div>

<script
          src="https://code.jquery.com/jquery-3.3.1.min.js"
          integrity="sha256-FgpCb/KJQlLNfOu91ta32o/NMZxltwRo8QtmkMRdAu8="
          crossorigin="anonymous"></script>
<script>
  doc.render().then(function(htmlElements) {
     //console.log(meta);
     //console.log(htmlElements);
     console.log(htmlElements);
     var display = document.getElementById("display");
     for(var i=0;i<htmlElements.length;i++){
        //console.log(htmlElements[i][0].innerHTML);
        display.innerHTML+=htmlElements[i][0].innerHTML; //RENDERING ALL DIVS INTO display DIV
     }
     }).catch(error => console.error(error))
</script>