温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

在B/S下如何保持RTF域格式

发布时间:2021-11-30 17:42:14 来源:亿速云 阅读:105 作者:小新 栏目:编程语言

这篇文章主要为大家展示了“在B/S下如何保持RTF域格式”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“在B/S下如何保持RTF域格式”这篇文章吧。

在B/S下保持RTF域格式的方法

在Lotus b/s程序的开发中,经常要使用到RTF域,而Lotus提供的RTF虽然可以使用applet来显示并可以编辑文本文字的格式,但其功能有限,而且显示速度比较慢.也并不是所有的IE都支持.那么现在开发中用的最多的还是自已来处理RTF域的格式.目前使用最多的应该是基于DHTML编写的网页编辑器,它最终产生的是HTML代码,而在Lotus中HTML代码在RTF域中默认是把标签显示给了用户,这不是我们所想要的效果.解析后的效果才是我们所想要的. 现在总结一下显示RTF域中输入的文字的格式应该有三个不同的方法.看情况而定.

 
1.在RTF域中输入HTML代码,想保持HTML网页的格式.
  解决方法如下:
 Sub Initialize    
     Dim session As New NotesSession
     Dim db As NotesDatabase
     Set db = session.CurrentDatabase
     Dim doc As New NotesDocument(db)
     Call doc.AppendItemValue("From", session.UserName)
     Call doc.AppendItemValue("Subject", _
     "Meeting time changed")
     Dim richStyle As NotesRichTextStyle
     Set richStyle = session.CreateRichTextStyle
     Dim richText As New NotesRichTextItem(doc, "Body")
     richStyle.PassThruHTML = True
     Call richText.AppendStyle(richStyle)
     Call richText.AppendText("Hello")
     Call doc.Save(True, False)
End Sub
 
以上代码显示的最后效果是Hello而不是Hell,这段代码的关键是richStyle.PassThruHTML = True这句,它把RTF域的PassThruHTML属性设为了TRUE这时候RTF就会完全解析HTML标签并显示成网页的格式.
 
但是我好像发现在用代理来创建一个新文档时并不能直正的创建出一个richStyle.PassThruHTML = True的RTF域.有时候并不是很灵.特别是在当代理产生了多个同名的RTF域时这种情况出现的更多.
 
2.当RTF域中输入的是文本文字不带 HTML标签时,这时如果要在IE下保持格式需要把回车符换成HTML标签即:
或者是

标签.并把空格符换成 
  又因为在dominoR5下lotusScript没有提供replace函数(Domino R6下自带了)所以我们必须要自已写一个replace函数来处理回车换行符.

以上是“在B/S下如何保持RTF域格式”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

rtf
AI