RichEdit 分页生成图片 求高手指点(50分)

  • 主题发起人 主题发起人 zysunit
  • 开始时间 开始时间
Z

zysunit

Unregistered / Unconfirmed
GUEST, unregistred user!
当RichEdit中的字符串 多于一页时 如何分页?

现在我能做到生成一页 程序如下:

var bmp:Tbitmap;
begin
bmp:=tbitmap.Create;
bmp.Height:=RichEdit1.Height;
bmp.Width:=RichEdit1.Width;
RichEdit1.SelAttributes.Color :=clred;
bitblt( bmp .Canvas.Handle,0,0,bmp.Width,bmp.Height,FrmPublishMessage.Canvas.Handle,RichEdit1.Left,RichEdit1.Top,srccopy);
bmp.SaveToFile('c:/b.bmp');
bmp.Free;
end;
 
关注!有高手回答没?
 
有没有人知道呀 急
 
上面的分页问题解决了 但又产生新的问题 就是每次分页的行数不一样 他和行距和字体大小有关 有时看到分的页里只能看到半行 请问有人知道这是怎么回事吗
分页代码:
iM := 65537;
//赋初值
i:=1;
while iM > 65536do
begin
bitblt(bmp.Canvas.Handle,0,0,bmp.Width,bmp.Height,FrmPublishMessage.Canvas.Handle,RichEdit1.Left,RichEdit1.Top,srccopy);
bmp.SaveToFile('c:/'+formatfloat('000000',i)+'.bmp');
iM := RichEdit1.Perform(EM_SCROLL, SB_PAGEDOWN ,0);
if im=65536 then
break;
i:=i+1;
end;
 
我自己顶了!
 

Similar threads

后退
顶部