RTF BMP文件的字符串值

时间:2012-02-06 10:07:59

标签: vb6 rtf

如果这个问题是重复的,请接受我的用法。我试过谷歌,但我无法得到答案我正在寻找。 如何将imgage(BMP或JPEG)转换为其等效的RTF字符串值?然后,我将此值存储到数据库中,我可以从中加载此字符串以显示图像。我正在使用第三方控件(TX Text Control 10.1)来显示图像。这个Tx Text控件正在我的一个VB 6应用程序中使用。

任何帮助将不胜感激。 提前致谢

2 个答案:

答案 0 :(得分:1)

这个语言略有陈旧,但这里是RTF规范部分,你应该从以下开始:

http://msdn.microsoft.com/en-us/library/aa140283(v=office.10).aspx#rtfspec_24

它最终会看起来像这样(来自同一篇文章):

{\pict\wbitmap0\picw170\pich77\wbmbitspixel1\wbmplanes1\wbmwidthbytes22
\picwgoal505
\pichgoal221
\picscalex172
\picscaley172
49f2000000000273023d1101a030
3901000a000000000273023d98
0048000200000275
02040000200010275023e000000000
273023d000002b90002b90002
b90002b90002b9
0002b90002b90002b90002b90002b90002
b92222b90002b90002b90
002b90002b9
0002b90002b90002b90002b9000

大多数值,例如图像宽度和高度,都可以在VB6中检索,但正如文章所提到的,你需要使用像GetDIBits之类的函数来获取颜色的字节值。如果您在VB6中使用Declare代码是不公平的,那么快速google就可以找到许多示例,例如thisthisthis

答案 1 :(得分:0)

如果您计划加载大量图像,那么我不推荐这种方法,因为您的数据库的大小将变为气球。您可以更好地将图像存储在共享文件夹中,然后在数据库的文本字段中存储指向图像位置的链接。