在B/S下如何保持RTF域格式
导读:本文共1443字符,通常情况下阅读需要5分钟。同时您也可以点击右侧朗读,来听本文内容。按键盘←(左) →(右) 方向键可以翻页。
摘要: 在B/S下保持RTF域格式的方法在Lotus b/s程序的开发中,经常要使用到RTF域,而Lotus提供的RTF虽然可以使用applet来显示并可以编辑文本文字的格式,但其功能有限,而且显示速度比较慢.也并不是所有的IE都支持.那么现在开发中用的最多的还是自已来处理RTF域的格式.目前使用最多的应该是基于DHTML编写的网页编辑器,它最终产生的是HTML代码,而... ...
目录
(为您整理了一些要点),点击可以直达。在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域格式的详细内容,希望对您有所帮助,信息来源于网络。