急用,在线等待!高分相送! 有谁知道怎样用RichEdit控件读取Blob字段中的带图片的格式化文本信息!如果此控件不能读取,有什么控件还能够读取! 在线待待!急用!谢谢!高分相送! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 直接从文件存入BLOB字段的!要求用控件读出! 老兄,读图片你要用个有Canves属性的控件啊,比如说Image什么的啊。 猫兄,我读的是RTF格式啊!怎么办? 干脆直接调用一个可以读RTF格式的EXE程序不就可以了吗? DELPHI5以下RichEdit不支持图片.给你推荐一个能支持图片的到DELPHI深度历险找RichEdit98控件 想的是用什么控件?不能调用EXE! 文本和图片应该分开放,图片用dbimage控件来读区,或用inage控件饶过数据库来读区 sqlserver2000,有个格式 text 和ntext很有用的 RICHEDIT是可以的..在RXRichED单元中重载TConversion类(本来在ComCtrls中),修改它的两个方法。这两个方法中的Buffer是rtf的二进制文件。经过观察,发现rtf的图片都是用{}包括起来的,并且有'\pict\'的关键字,因而可以从此入手,将全部{}的内容替换为你要的字符(注意rtf中中英文字符的表示方法)。 下面的方法是图片数据比较,有点笨。 先设一个变量DPict: string,值是图片在rtf中的数据。可以将该图片保存成rtf后提取。然后将文件原样保存(不作变换)为rtf格式,在rtf文件中进行字符串替换。(在TConversion的ConvertWriteStream方法中不能进行,因为图片数据可能被截断). 用OleContainer,包含word,然后就能打开显示了 存到数据库varpjpg:tjpegimage;pic:TMemoryStream;beginpjpg:=tjpegimage.Create;pjpg.LoadFromFile(F:\JPG.jpg);pic:=TMemoryStream.Create;pjpg.SaveToStream(pic);pic.Position:=0;TBlobField(dataset.FieldByName('Img')).LoadFromStream(pic);dataset.post;pic.Free;pjpg.free;end;从数据库取出varpjpg:tjpegimage;pic:TMemoryStream;beginpjpg:=tjpegimage.Create;pic:=TMemoryStream.Create;TBlobField(dataset.FieldByName('Img')).savetoStream(pic);pic.positon:=0;pjpeg.LoadFromStream(pic);image.graphi.bmp.assign(pjpeg);end;end; 数据库的字段要求是BLOB类型!存入的数据要求是带图片RTF文本,要求再读出! RichEdit不支持图片,赶紧找其它第三方控件吧,帮查中。。 关于SetForegroundWindow与BringWindowToTop delphi 文件夹权限设置 如何在dbgrid中显示记录序号? 关于三层模式下用CLIENTDATASET读取BLOG字段的图片显示不全的问题 怎样拦截API??? 请问如何控制DBGRID中指定记录的是否显示 帮帮忙,我更新数据的时候,出现问题了! 问一个很菜的问题,请问各位高手在开发时..... 怎样改变弹出菜单的颜色. 如何实现在一个Edit控件中输入,而可以在dbgrid控件是显示该类数据表?????? 有关TList的资源释放? problem 2 about print
给你推荐一个能支持图片的
到DELPHI深度历险找RichEdit98控件
在RXRichED单元中重载TConversion类(本来在ComCtrls中),修改它的两个方
法。
这两个方法中的Buffer是rtf的二进制文件。经过观察,
发现rtf的图片都是用{}包括起来的,并且有'\pict\'的关键字,因而可以从此入
手,将全部{}的内容替换为你要的字符(注意rtf中中英文字符的表示方法)。
先设一个变量DPict: string,值是图片在rtf中的数据。可以将该图片保存
成rtf后提取。然后将文件原样保存(不作变换)为rtf格式,在rtf文件中进行字符
串替换。(在TConversion的ConvertWriteStream方法中不能进行,因为图片数据
可能被截断).
var
pjpg:tjpegimage;
pic:TMemoryStream;
begin
pjpg:=tjpegimage.Create;
pjpg.LoadFromFile(F:\JPG.jpg);
pic:=TMemoryStream.Create;
pjpg.SaveToStream(pic);
pic.Position:=0;
TBlobField(dataset.FieldByName('Img')).LoadFromStream(pic);
dataset.post;
pic.Free;
pjpg.free;
end;
从数据库取出
var
pjpg:tjpegimage;
pic:TMemoryStream;
begin
pjpg:=tjpegimage.Create;
pic:=TMemoryStream.Create;
TBlobField(dataset.FieldByName('Img')).savetoStream(pic);
pic.positon:=0;
pjpeg.LoadFromStream(pic);
image.graphi.bmp.assign(pjpeg);
end;end;