如何在richtextbox中显示图片,且让图片可以随滚动条上下行移动
表单中有一个ricktextbox控件,用来显示试题。试题是由文字和图片组成(一段文字一张图片)。
我事先把文字存到了表中,通过richtextbox可以可以显示表中字段里的文字,并可以调整字号大小。但图片不知道如何处理?
1、文字和图片可以存在一个字段中吗?
2、怎么才能图文混排?
注:我已看过张洪举老师的“160问中关于RichTextBox控件的示例”,但还是没解决上面的问题!
[解决办法]
借助rtf文件吧!
rtf文件的最前边是:
{\rtf1\ansi\ansicpg936\deff0\deflang1033\deflangfe2052{\fonttbl{\f0\fmodern\fprq6\fcharset134 \'cb\'ce\'cc\'e5;}{\f1\fnil\fprq2\fcharset134 \'cb\'ce\'cc\'e5;}}
接下来假如是文字的话是:
{\*\generator Msftedit 5.41.15.1515;}\viewkind4\uc1\pard\nowidctlpar\lang2052\f0\fs20 这里是文字内容\par
插一副图片是:
{\pict\wmetafile8\picwgoal6375\pichgoal6930
……(省略部分是图片代码,可以用写字版把一个图片转换成代码)
}\par
再来点文吧:
\f1\fs18 这里是文字内容\par
最后别忘了用一个
}
来结束
接下来,把文字内容放在表字段中,把图片代码存到备注型字段中
最后在读取的时候按照rtf格式,把文字和图片组合成一个rtf文件
再用richtextbox的loadfile("组合好的文件名.rtf")加载到
richtextbox控件中来,这样就做到了图文混排了!
这只是一个思路,对于不同版本的rtf文件格式应该有差异,但只要搞清楚
rtf文件,就可以借助它为所欲为了!
[解决办法]
把文字和图片都保存到一个 .RTF 格式文件(可以先建立到 .DOC 中,然后再另存为 .RTF),richtextbox 控件可以直接打开 .RTF 格式文件。
想再完美点,就把 .RTF 文件保存到 二进制备注字段 中,打开时先从 二进制备注字段 中还原成 .RTF,然后再用 richtextbox 控件可以直接打开这个 .RTF 文件。