怎么对RichEdit里的内容进行打印预览?(50分)

  • 主题发起人 happyzsl
  • 开始时间
H

happyzsl

Unregistered / Unconfirmed
GUEST, unregistred user!
需要根据具体内容进行分页,如:如果某一行内容是"New Page"就重新开始一页?
打印比较容易,就是不知道怎么进行预览?
请各位帮帮忙!谢谢!!!
更好的就是能够调整字体
 
建立一个报表:
while not richedit.end
begin
if richedit.当前行='new page' then
报表.print else
报表.memo.append(当前行)
end;
 
用quickreport的qrrichtext轻松搞定。
 
可以具体点吗?
 
我这样做
frmTest->QRRichText1->Lines->Assign(reMessage->Lines);//赋值
frmTest->QuickRep1->Preview();
frmTest是放Report的form
可是出现的预览没有内容啊
 
设置qrrichtext.parentrichedit:=你form上的richedit即可. 另外需要设置qrrichtext.autostretch:=true,
要完成诸如预见"New page"这样的行就要自动换页也有一个简单的办法可以做到。 我经常用的方法是修改rtf格式文本在/par }后面直接插入{/page }控制字符串来实现分页。
 
RichEdit中内容是通过Add动态添加的,分页怎么写?
 
设置qrrichtext.parentrichedit:=你form上的richedit
预览时闪烁太厉害了,有没有什么办法解决?
 
呵呵, 要改还不容易? 记录richedit当前光标位置(selstart和sellength),savetostream到一个stringstream里, 改掉那个string里的内容, 然后再loadfromstream再恢复selstart和sellength
闪烁厉害有一个很简单但有效的方法: 预览窗口.doublebuffered := true;
 
怎样改stream里的内容?让它分页要怎么写?
我的QRRichEdit放在窗体frmTest中,预览窗口.DoubleBuffered := true, 是不是这样
frmTest.DoubleBuffered := true?
我在frmTest的OnClick事件中写了这句话,没效果
 
不好意思,是在OnCreate事件中
 
Another_Yes在吗?
请问怎样把/par } {/page}这些控件符加入到richedit中?
比如我在richedit加入一行"end page"后要分页,在另一个开始又加入"new page"这一行
怎么做?
BADLY NEED YOUR HELP !!!
THANK YOU VERY MUCH!!!
 
我在/par 后加入{/page}只有加入一个空行的效果啊
如果/par}{/page}{  则后面的内容打印不出来
 
用GMPprintSuit最好!http://www.murtsoft.co.uk/
 
多人接受答案了。
 
顶部